文档介绍:单片机休眠
摘要:介绍一种用休眠-复位运行方式进步单片机抗干扰才能的方法;分析其适用范围,给出详细应用电路;结合实例,分析这种运行方式下硬件和软件设计的特点。 关键词:单片机 复位/休眠抗干扰
引 言
随着微电子技术的属“一过性〞错误。这种定时复位相对于看门狗电路的优点,一是把等待时间改为休眠状态 ,缩短可能受干扰的时间;二是防止了恰好包含看门狗控制环节的死循环。
外部条件复位法
有些输出或测量的启动是由外部控制的。如暖气热表,靠热水水轮旋转产生的脉冲计算热量,没有热水流动,就没有热量输出,CPU只要保持原来数值即可,不需要计数。可以想象,停暖时热水水轮不转,CPU在春夏秋三季那么无事可做;假如让其休眠,而不是时刻检测有无水轮脉冲,抗干扰才能会大大增强。因此,只要把水轮脉冲与CPU的复位联络起来,水轮每旋转1周,CPU复位1次,热表就可以正常工作了,这就是外部条件复位法。类似的应用还有半电子式电度表,当机械度盘旋转1周时才进展1个计数,用户不用电,CPU会一直休眠。这种方法的复位间隔不是固定的,而是根据外部条件确定的。在有些场合,休眠的时间会很长,对进步抗干扰才能非常有效。
2 硬件实现要点
无条件定时复位
一般有2种方法。① 使用定时器或专用时钟芯片复位。图1为使用555电路组成的定时电路;也可以使用X1126之类的时钟芯片,设置报警时间后用报警信号唤醒CPU。这种方法适用于长间隔定时,还可以根据本次运算的结果,临时决定下一次的报警唤醒时间,非常灵敏方便。② 使用系统固有的信号作为定时复位脉冲。例如使用50Hz工频电源整形后作复位,既省略了定时器,同时又为检测电流信号的相位采集了相应的信号,如图2所示。
外部条件复位
把外部条件脉冲整形后送到复位端子。对于上述水轮或电表度盘产生的脉冲,可以使用施密特触发器整形;对于记录最大或最小值的仪器,可使用窗口比拟器。为了实现调节的电子化,可以使用电子电位器,用单片机指令设定上下限。
复位周期与复位高电平时间
图3中,复位信号在高电平Tr期间,单片机处在复位状态,程序不运行,抗干扰才能最强;高电平过后,单片机开场执行程序。也就是说,复位信号的低电平Td期间是可供程序执行的时间,这个时间要大于每次程序的执行周期。合理选择复位周期和复位信号的高电平占空比非常重要。对于单纯显示仪表,复位周期决定数据刷新周期,低电平时间要大于检测、送显示的全部时间;否那么,会出现永远不能完好执行程序的错误。单片机在Ts和Tr期间都能有效地抗干扰,但是最好还是把多余时间安排在Tr内。当程序执行时间较长,要求尽量缩短Tr时,可参加微分电路,如图1中的C30、R26、D9。
输出端子的处理
(1)复位期间的正脉冲
复位期间单片机的全部I/O口变成高电平。也就是说,正常输出为低的引脚,会按照复位周期出现宽度为Tr的正脉冲。这个正脉冲会影响正常的输出,有2个方法处理:① 在端子上并联电容加以抑制,容量根据复位的Tr时间确定。减小Tr可以减小并联电容。② 把外围电路设计成高电平无效。
(2)容 错
适中选取输出端并联电容的容量,可以实现容错控制。在某个复位周期,因干扰输出了错误电平。由于电容的保持作用,在本周期内尚不能使输出变