掉电方式
发布时间:2014/6/4 20:16:57 访问次数:1077
由图3-11可知,上述指令执行后PD湍变为低电平(与门Ml关闭),时钟发生器因此停振,HD74LVC138FPEL片内所有功能部件停止工作,但片内RAM和特殊功能寄存器中的内容保持不变,ALE和PSEN的输出为逻辑低电平。在掉电期间,VCC电源可以降为2V(可以由干电池供电),但必须等待VCC恢复+5V电压并经过一段时间后,才能允许80C31退出掉电方式。
80C31从掉电状态退出的唯一方法是硬件复位,即需要给RST引脚上外加一个足够宽的复位正脉冲。80C31复位以后SFR被重新初始化,但RAM中的内容保持不变。因此,若要使得80C31在市电恢复正常后继续执行掉电前的程序,那就必须在掉电前预先把SFR
中的内容保护到片内RAM,并在市电恢复正常后先恢复SFR在掉电前的状态。
空闲方式
80C31执行如下指令可以进入空闲方式:
由图3-11可知,上述指令执行后1DL端变为低电平,与门M2无输出,CPU停止工作,但中断、串行口和定时/计数器可以继续工作。此时,CPU现场(即SP、PC、PSW和ACC等)、片内RAM和SFR中其他寄存器内容均维持不变、ALE和PSEN变为高电平等。
总之,CPU进入空闲状态后是不工作的,但各功能部件保持了进入空闲状态前的内容,且消耗功耗很少。因此,在程序执行过程中,用户在CPU无事可做或不希望它执行有用程序时应先让它进入空闲状态,一旦需要继续工作就让它退出空闲状态。
CHMOS型器件退出空闲状态有两种方法。一种是让被允许中断的中断源发出中断请求(例如定时器T()定时Ims时间已到),中断系统收到这个中断请求后,片内硬件电路会自动使IDL=O,致使图3-11中与门M2重新打开,CPU便可从激活空闲方式指令的下一条指令开始继续执行程序。另一种使CPU退出空闲状态的方法是硬件复位,即在80C31的RST引脚上送一个脉宽大于24个时钟周期的脉冲。此时,PCON中的IDL被硬件自动清零(即M2重新打开),CPU使可继续执行进入空闲方式前的用户程序。
现在,以图3-12来说明空闲方式的应用。我们希望80C31在市电正常时执行用户程序,停电时依靠备用电池处于空闲方式,并在市电恢复后继续执行停电前的用户程序。
图3-12中,硬件电路十分简单。两只二极管用于对两种电源起隔离作用,即市电正常时备用电池不工作,反之亦然。“交流停电检测电路”既可以由市电电源+5V供电,也可以由备用干电池供电。“交流停电检测电路”的作用是:若市电未停,则它使Pl.0引脚变为低电平“O”;若市电停,则它使Pl.0变为高电平“1”。
由图3-11可知,上述指令执行后PD湍变为低电平(与门Ml关闭),时钟发生器因此停振,HD74LVC138FPEL片内所有功能部件停止工作,但片内RAM和特殊功能寄存器中的内容保持不变,ALE和PSEN的输出为逻辑低电平。在掉电期间,VCC电源可以降为2V(可以由干电池供电),但必须等待VCC恢复+5V电压并经过一段时间后,才能允许80C31退出掉电方式。
80C31从掉电状态退出的唯一方法是硬件复位,即需要给RST引脚上外加一个足够宽的复位正脉冲。80C31复位以后SFR被重新初始化,但RAM中的内容保持不变。因此,若要使得80C31在市电恢复正常后继续执行掉电前的程序,那就必须在掉电前预先把SFR
中的内容保护到片内RAM,并在市电恢复正常后先恢复SFR在掉电前的状态。
空闲方式
80C31执行如下指令可以进入空闲方式:
由图3-11可知,上述指令执行后1DL端变为低电平,与门M2无输出,CPU停止工作,但中断、串行口和定时/计数器可以继续工作。此时,CPU现场(即SP、PC、PSW和ACC等)、片内RAM和SFR中其他寄存器内容均维持不变、ALE和PSEN变为高电平等。
总之,CPU进入空闲状态后是不工作的,但各功能部件保持了进入空闲状态前的内容,且消耗功耗很少。因此,在程序执行过程中,用户在CPU无事可做或不希望它执行有用程序时应先让它进入空闲状态,一旦需要继续工作就让它退出空闲状态。
CHMOS型器件退出空闲状态有两种方法。一种是让被允许中断的中断源发出中断请求(例如定时器T()定时Ims时间已到),中断系统收到这个中断请求后,片内硬件电路会自动使IDL=O,致使图3-11中与门M2重新打开,CPU便可从激活空闲方式指令的下一条指令开始继续执行程序。另一种使CPU退出空闲状态的方法是硬件复位,即在80C31的RST引脚上送一个脉宽大于24个时钟周期的脉冲。此时,PCON中的IDL被硬件自动清零(即M2重新打开),CPU使可继续执行进入空闲方式前的用户程序。
现在,以图3-12来说明空闲方式的应用。我们希望80C31在市电正常时执行用户程序,停电时依靠备用电池处于空闲方式,并在市电恢复后继续执行停电前的用户程序。
图3-12中,硬件电路十分简单。两只二极管用于对两种电源起隔离作用,即市电正常时备用电池不工作,反之亦然。“交流停电检测电路”既可以由市电电源+5V供电,也可以由备用干电池供电。“交流停电检测电路”的作用是:若市电未停,则它使Pl.0引脚变为低电平“O”;若市电停,则它使Pl.0变为高电平“1”。