在单片机体系的实践使用中,常把单片机体系的复位分为冷发动和热发动。所谓冷发动,也便是一般所说的上电复位。冷发动后片表里RAM的内容是随机的,所以应先依据体系的要求,使用发动程序将某些
内部RAM或外部RAM初始化到某个特定状况。比如在某些存储单元清零,或设置运算标志,然后再转入正常运转。单片机的热发动是经过外部电路给运转中的单片机的/RST端一复位电平(或脉冲)而完成的。这也便是常说的按键复位或脉冲复位。复位后,RAM的内容都没有改动,这时为了开端新的运算(这往往是热发动的意图),能够依据运算的要求,对一些RAM的内容给予维护,对另一部分RAM的内容则进行初始化。
为了区别两种不同的发动方法,能够选用软件的方法也能够选用硬件加软件合作的方法。使用软件发动方法关键是使用单片机复位后RAM内容不变这一特色,在RAM中指定一个或几个单元作为冷发动标志单元。复位后的发动程序经过查看冷发动标志的有无,然后断定现在进行的是冷发动仍是热发动。常用的冷发动标志有A5H(10100101B)或5AH(01011010B)。
使用硬件加软件合作的方法,因为电容C有一个充电进程,使单片机的/INT脚在上电后的瞬间呈现了一个低电平。这时使用发动程序查询/INT脚的电平是否升高。假如升高,则履行后边的主程序;不然原地等候,直到/INT脚升为高电平,才干开端后边的操作。假如不是上电复位,则/INT脚将不会有一个低电平,这样发动程序查询/INT脚后,就会转去履行热发动初始化操作。
最终阐明一下,并不是一切的单片机体系都需求区别冷发动和热发动,这应该依据体系功用设置来定。