首页 理论教育 看门狗模块详解

看门狗模块详解

时间:2023-06-24 理论教育 版权反馈
【摘要】:前者图4-6 看门狗模块功能框图将引起芯片复位,后者将发出中断请求。若在T仍然有效时,将看门狗从中断模式配置成复位模式,则会立即引起设备复位。看门狗中断连接到了PIE模块中的WAKEINT中断。

看门狗模块详解

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位计数器达到最大值时,看门狗会产生一输出脉冲978-7-111-49650-2-Chapter04-30.jpg或WDINT中断信号(其宽度为512个OSCCLK时钟周期)。

3.看门狗复位中断模式

看门狗计数器达到最大值时,看门狗将输出复位信号978-7-111-49650-2-Chapter04-31.jpg或中断信号W978-7-111-49650-2-Chapter04-32.jpg。前者

978-7-111-49650-2-Chapter04-33.jpg

图4-6 看门狗模块功能框图(www.xing528.com)

将引起芯片复位,后者将发出中断请求。

1)复位模式。如果看门狗配置为复位设备,则看门狗计数器达到最大值时,将输出978-7-111-49650-2-Chapter04-34.jpg信号,该信号将芯片的复位引脚XRS拉低并维持512个OSCCLK周期。

2)中断模式。如果看门狗配置为请求中断,则看门狗计数器达到最大值时,WDINT信号被拉低并维持512个OSCCLK周期;若在PIE中使能了该中断,则WAKEINT将被PIE响应。看门狗中断由978-7-111-49650-2-Chapter04-35.jpgT信号的下降沿触发,因此若在978-7-111-49650-2-Chapter04-36.jpg信号变成无效之前,又使能了WAKEINT中断,程序将不会立即进入下一个WAKEINT中断;下一个WAKEINT中断将在下一次看门狗溢出时发生。

若在978-7-111-49650-2-Chapter04-37.jpgT仍然有效时,将看门狗从中断模式配置成复位模式,则会立即引起设备复位。在将看门狗重新配置为复位模式之前,可通过读取SCSR寄存器的WDINTS位来判断978-7-111-49650-2-Chapter04-38.jpg信号当前是否处于有效状态。

4.低功耗模式下看门狗操作

在STANDBY模式下,除看门狗模块继续工作外,所有片内外设时钟均关闭,因为看门狗模块是以OSCCLK作为时钟源。978-7-111-49650-2-Chapter04-39.jpg信号连接到了低功耗模式(LPM)模块,若该中断使能,则可用来将设备从STANDBY中唤醒。

在IDLE模式下,978-7-111-49650-2-Chapter04-40.jpg可向CPU发送中断请求使CPU退出IDLE模式。看门狗中断连接到了PIE模块中的WAKEINT中断。

在HALT模式下,振荡器和PLL均关闭,所以看门狗不工作。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈