1.3.2 单片机系统的工作模式
根据单片机的工作状态,单片机的工作模式分运行模式、待机模式和掉电保护模式3种,单片机的工作模式可以利用编程或人为干预方式相互转换。单片机的工作模式与电源有很大关系,在不同的工作环境和电源条件下,单片机工作模式也可以通过程序设定。
1.运行模式
单片机的运行模式是单片机的基本工作模式,也是单片机最主要的工作模式。单片机在实现用户设计的功能时通常采用这种工作模式。在单片机运行期间,单片机一旦复位,程序计数器(PC)总是从0000H开始,依次从程序存储器中读取指令代码,单片机开始顺序执行相关程序。
单片机运行时,程序执行在时钟脉冲的作用下统一协调运行,也可以在单步脉冲的作用下单步执行。利用单片机的外部中断可以实现程序单步执行,这种情况主要用于程序调试和检验程序运行结果。
2.待机模式和掉电保护模式
待机模式和掉电保护模式是两种单片机的节电工作方式。具有低功耗特性的MCS-51系列单片机,在Vcc=5V、fosc=12MHz的条件下,待机模式时电流约为2mA。掉电保护模式时电流小于0.1μA。这两种工作模式特别适合以电池为工作电源的单片机系统。两种低功耗工作模式由单片机内部的电源控制(PCON)寄存器确定。PCON的8位格式为
其中,SMOD为波特率倍增控制位(在串行通信中使用);GF1、GF0为通用标志位;PD为掉电保护模式控制位,PD=1,进入掉电保护工作模式;IDL为待机模式控制位,IDL=1,进入待机工作模式。
(1)待机模式
待机模式的进入方法非常简单,只需用指令将PCON寄存器的IDL位置1即可。单片机进入待机模式时振荡器继续工作,中断系统、串行口和定时器/计数器等功能单元正常运行,CPU停止工作,进入睡眠状态。片内RAM及所有特殊功能寄存器的状态都保持不变,各引脚保持进入待机模式时的状态,ALE和保持为高电平。
退出待机状态的方法有中断和硬件复位两种。在待机状态下,任何一个中断源产生中断请求信号后,在单片机响应中断的同时,PCON.0位(即IDL位)被硬件自动清0,单片机退出待机模式,进入正常的工作状态。另一种退出待机状态的方法是硬件复位,在RST引脚加上两个机器周期的高电平即可,复位后的状态如前所述。
(2)掉电保护模式
掉电保护模式的进入类似于待机模式,只需使用指令将PCON寄存器的PD位置1即可。进入掉电保护模式后,振荡电路停振,单片机的一切工作全部停止,只有片内RAM单元的内容被保存。I/O引脚状态和相关特殊功能寄存器的内容相对应,ALE和为低电平。
硬件复位或外部中断请求可使单片机退出掉电保护模式。复位后特殊功能寄存器的内容被初始化,但RAM的内容仍然保持不变。