1.看门狗功能
看门狗(WatchDog,WD)常用来控制监控程序的执行。2833x/2823x的看门狗模块与240x和281x类似,只要8位的看门狗计数器达到其最大值,该模块就会产生中断或使处理器复位。为避免以上情况发生,用户必须禁用计数器或在程序中按时把0x55和0xAA两个数据先后写入看门狗的关键字寄存器(“喂狗”),使看门狗计数器复位。图4-6是看门狗模块的功能框图。
2.看门狗时钟
外部的振荡时钟信号(OSCCLK)经过512分频器后,再经过看门狗分频器WDPS(2:0)分频产生WDCLK信号,即看门狗时钟信号。
如果看门狗控制寄存器WDCR中的WDDIS位为0,则WDCLK将作为看门狗计数器寄存器WDCNTR的计数时钟,使其计数。当该8位计数器达到最大值时,看门狗会产生一输出脉冲或WDINT中断信号(其宽度为512个OSCCLK时钟周期)。
3.看门狗复位、中断模式
看门狗计数器达到最大值时,看门狗将输出复位信号或中断信号W。前者
图4-6 看门狗模块功能框图(www.xing528.com)
将引起芯片复位,后者将发出中断请求。
1)复位模式。如果看门狗配置为复位设备,则看门狗计数器达到最大值时,将输出信号,该信号将芯片的复位引脚XRS拉低并维持512个OSCCLK周期。
2)中断模式。如果看门狗配置为请求中断,则看门狗计数器达到最大值时,WDINT信号被拉低并维持512个OSCCLK周期;若在PIE中使能了该中断,则WAKEINT将被PIE响应。看门狗中断由T信号的下降沿触发,因此若在信号变成无效之前,又使能了WAKEINT中断,程序将不会立即进入下一个WAKEINT中断;下一个WAKEINT中断将在下一次看门狗溢出时发生。
若在T仍然有效时,将看门狗从中断模式配置成复位模式,则会立即引起设备复位。在将看门狗重新配置为复位模式之前,可通过读取SCSR寄存器的WDINTS位来判断信号当前是否处于有效状态。
4.低功耗模式下看门狗操作
在STANDBY模式下,除看门狗模块继续工作外,所有片内外设时钟均关闭,因为看门狗模块是以OSCCLK作为时钟源。信号连接到了低功耗模式(LPM)模块,若该中断使能,则可用来将设备从STANDBY中唤醒。
在IDLE模式下,可向CPU发送中断请求使CPU退出IDLE模式。看门狗中断连接到了PIE模块中的WAKEINT中断。
在HALT模式下,振荡器和PLL均关闭,所以看门狗不工作。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。