2.4 AT89S51单片机的最小系统
2.4.1 AT89S51单片机最小系统的构成
微课:单片机最小系统
在单片机实际应用系统中,由于应用条件及控制要求的不同,其外围电路的组成各不相同。单片机的最小系统就是指在尽可能少的外部电路条件下,能使单片机独立工作的系统。
由于AT89S51内部已经有4 KB的Flash E2PROM及128 B的RAM,因此只需要接上时钟电路和复位电路就可以构成单片机的最小系统,如图2-13所示。
2.4.2 时钟电路
时钟电路对单片机系统而言是必需的。由于单片机内部是由各种各样的数字逻辑器件(如触发器、寄存器、存储器等)构成,这些数字器件的工作必须按时间顺序完成,这种时间顺序就称为时序。时钟电路就是提供单片机内部各种操作的时间基准的电路,没有时钟电路单片机就无法工作。
1.时钟电路的产生方式
根据AT89S51单片机产生时钟方式的不同,可将时钟电路分为内部时钟方式及外部时钟方式两种。
在XTAL1和XTAL2引脚之间外接石英晶体振荡器及两个谐振电容,就可以构成内部时钟电路,如图2-13 所示的电路。内部时钟电路的石英晶体振荡器频率一般选择在 4~12MHz,谐振电容采用20~30 pF的瓷片电容。
图2-13 单片机的最小系统
如果单片机的时钟采用某一个外接的时钟信号,则可以按图2-14 (a)、图2-14 (b)所示连接。对于AT89S51一般可采用如图2-14 (b)所示外接时钟信号。
图2-14 外部时钟电路
2.单片机的时序单位
时钟电路产生的最小时序单位称为时钟周期,它是由石英晶体振荡器的振荡频率决定的,又称振荡周期。
将石英晶体振荡器的振荡频率进行二分频,就构成了状态周期,一个状态周期等于两个时钟周期。将这两个时钟周期称为两个节拍,用P1、P2表示。
6个状态周期就构成了1个机器周期,机器周期是单片机执行一次基本操作所需要的时间单位。6个状态依次用S1~S6表示。
单片机执行一条指令所需要的时间称为指令周期,通常由1~4个机器周期组成。它是由不同指令来决定时间长短的,附录B中列出了各种指令所需要的时间。一般AT89S51系列单片机的指令分为单机器周期、双机器周期及四机器周期指令。
各时序单位间的关系如图2-15所示。
图2-15 各时序单位间的关系
例如:石英晶体振荡器的频率为fOSC=12MHz,则有
时钟周期
状态周期=2×时钟周期=0.167 μs
机器周期=12×时钟周期=1 μs
指令周期=(1~4)机器周期=1~4 μs
2.4.3 复位电路
单片机的复位就是对单片机进行初始化操作,使单片机内部各寄存器处于一个确定的初始状态,以便进行下一步操作。
1.复位电路的构成
要实现复位操作,只需在AT89S51单片机的RST引脚上施加5 mV的高电平信号即可。单片机的复位电路有两种形式:上电复位和按钮复位。图 2-16 (a)所示为上电复位,图2-16 (b)所示为按钮复位。
图2-16 复位电路
(a)上电复位; (b)按钮复位
上电复位是利用电容充电来实现的,即上电瞬间RST端的电位与VCC相同,随着电容上储能增加,电容电压也增大,充电电流减少,RST端的电位逐渐下降。这样在RST端就会建立一个脉冲电压,调节电容与电阻的大小可对脉冲持续的时间进行调节。通常晶振为6MHz时,复位电路元件为22 μF的电解电容和1 kΩ的电阻,若晶振频率为12MHz时,复位电路元件为10 μF的电解电容和10 kΩ的电阻。
按钮复位电路是通过按下复位按钮时,电源对RST端维持两个机器周期的高电平实现复位的。
2.复位后各寄存器的状态
单片机进行复位操作后,各寄存器的内容被初始化。复位后各寄存器的状态如表2-6所示。
表2-6 AT89S51单片机复位后各寄存器的状态
由表可知,除SP、P0~P3及SBUF外,其余各寄存器的值均为0。PC=0000H代表单片机从地址为0处开始执行程序。端口P0~P3为FFH表明所有端口锁存器均被置“1”,可进行输入/输出数据的操作。