目录
一.时钟电路设计
1.内部时钟方式
2.外部时钟方式
3.时钟信号的输出
二.机器周期,指令周期与指令时序
1.时钟周期
2.机器周期
3.指令周期
三.复位操作和复位电路
1.复位操作
2 复位电路设计
四.低功耗节电模式
AT89S52本身片内有8KB闪烁存储器,256B的RAM单元,4个I/0口,外接时钟电路和复位电路即构成了一个AT89S52单片机最小应用系统,如图所示:
该最小应用系统只能作为小型的数字量的测控单元
一.时钟电路设计
时钟频率直接影响单片机的速度,时钟电路的质量也直接影响单片机系统的稳定性。常用的时钟电路有两种方式,一种是内部时钟方式,另一种是外部时钟方式。
1.内部时钟方式
AT89S52内部有一个用于构成振荡器的高增益反相放大器,输入端为芯片引脚XTAL1,输出端为引脚XTAL2。这两个引脚跨接石英晶体振荡器和微调电容,构成一个稳定的自激振荡器,如图是AT89S52内部时钟方式的电路。
C1和C2的典型值通常选择为30pF。电容大小会影响振荡器频率高低振荡器的稳定性和起振的快速性。晶振频率范围通常是1.2~12MHz,串口通信时,为了得到准确的波特率,多采用11.0592M晶体。晶体频率越高,单片机速度就越快
常选6MHz或12MHz的石英晶体。随着集成电路制造工艺技术的发展单片机的时钟频率也在逐步提高,已达33MHz。
2.外部时钟方式
用现成的外部振荡器产生脉冲信号,常用于多片AT89S52同时工作,以便于多片AT89S52单片机之间的同步,一般为低于12MHz的方波。外部时钟源直接接到XTAL1端,XTAL2端悬空,见图:
3.时钟信号的输出
当使用片内振荡器,XTAL1、XTAL2引脚还能为应用系统中的其他芯片提供时钟,但需增加驱动能力。引出的方式有两种,如图所示。
二.机器周期,指令周期与指令时序
各种指令时序与时钟周期相关。
1.时钟周期
时钟控制信号的基本时间单位。若晶振频率为,则时钟周期=1/如=6MHZ,=166.7ns
2.机器周期
CPU完成一个基本操作所需时间为机器周期。执行一条指令分为几个机器周期。每个机器周期完成一个基本操作,如取指令、读或写数据等。每12个时钟周期为1个机器周期(机器周期=12*)
1个机器周期包括12个时钟周期,分6个状态: S1~S6。每个状态又分两拍: P1和P2。因此,一个机器周期中的12个时钟周期表示为S1P1、S1P2、S2P1、S2P2、··、S6P2,如图所示。
3.指令周期
执行一条指令所需的时间。简单的单字节指令,取出指令立即执行,只需一个机器周期的时间。而有些复杂的指令,如转移、乘、除指令则需两个或多个机器周期
从指令执行时间看:
•单字节和双字节指令一般为单机器周期和双机器周期;
•三字节指令都是双机器周期;
•乘、除指令占用4个机器周期;
三.复位操作和复位电路
单片机的初始化操作,给复位脚RST加上大于2个机器周期(即24个时钟振荡周期)的高电平就使AT89S52复位。
1.复位操作
复位时,PC初始化为0000H,程序从0000H单元开始执行。除系统的正常初始化外,当程序出错(如程序跑飞) 或操作错误使系统处于死锁状态时,需按复位键使RST脚为高电平,使AT89S52摆脱“跑飞”或“死锁”状态而重新启动程序。
复位操作还对其他一些寄存器有影响,这些寄存器复位时的状态如图:
由表可看出,复位时,SP=07H ,而P0~P3引脚均为高电平
在某些控制应用中,要注意考虑PO~P3引脚的高电平对接在这些引脚上的外部电路的影响
例如,当P1口某个引脚外接一个继电器绕组,当复位时,该引脚为高电平继电器绕组就会有电流通过,就会吸合继电器开关,使开关接通,可能会引起意想不到的后果。
2 复位电路设计
AT89S52单片机的复位是由外部的复位电路实现的。复位电路应兼有上电复位(一开机就复位 )和人工按键复位两种功能。典型的复位电路如图:
注:信号一定要>2个机器周期,要想做到这一点,就要使复位的时间长一点,上电复位(电容的充放电速率缓慢),人工按键复位(按下按键的时候停留一会儿,保证>2个机器周期)
当时钟频率选用6MHz时,电容C的参考取值为22uF,两个电阻Rs和Rk的参考阻值分别为220和1k
四.低功耗节电模式
两种低功耗节电工作模式:空闲模式(idle mode)和掉电保持模式(power down mode)
空闲模式:表示使CPU停止工作,单片机的中断,串行口定时/计时器继续工作。
掉电模式:使外部时钟停止工作,没有外部时钟信号,内部的部件都不会进行工作。
掉电保持模式下,Vcc可由后备电源供电。图中为两种节电模式的内部控制电路。
两种节电模式可通过PCON的位IDL和位PD的设置来实现。格式如图所示。
PCON寄存器各位定义:
SMOD:串行通信波特率选择。
一:保留位。
GF1、GF0:通用标志位,两个标志位用户使用。
PD:掉电保持模式控制位,PD=1,则进入掉电保持模式
IDL:空闲模式控制位,若IDL=1,则进入空闲运行模式
恢复方式:
空闲模式恢复:1.中断信号使IDL=0 2.硬件复位使IDL=0
掉电模式恢复:1.外部中断信号使PD=0 2.硬件复位使PD=0
注:如果是硬件复位,那么之前运行的程序,需要重新开始,如果是中断信号,那么只需要从中断程序继续开始