×
嵌入式 > 技术百科 > 详情

单片机程序中为什么要禁止看门狗

发布时间:2020-06-06 发布时间:
|
单片机程序中为什么要禁止看门狗

       设置看门狗定时器的时候,必须先关闭它才能设置,否则在开启状态下设置看门狗定时器可能会出现问题。一般单片机和DSP、还有ARM芯片里设置内部功能的时候,都是先关闭这个功能,再设置。中断也是类似的,我们通常它把中断全部关闭了,然后在程序里面进一步设置。

       要搞清楚关闭看门狗定时器的深层次原因,我们先得明白其用途:

       它其实就是一个定时器,这个定时器溢出是会产生一个中断响应,这个中断响应对应的中断服务就是跳回程序开头,也就是复位。启动看门狗后,要定时在程序中把看门狗的计数器清0,以防止它进入中断然后复位,这就叫做喂狗。

       看门狗定时器常用在程序很容易跑飞的情况下(比如等待超时,意外进入死循环等)——在启动看门狗定时器的前提下,如果程序跑飞,不用怕,等计数器WTCNT溢出时,程序会自动复位。但在一般的程序中是不太可能会跑飞的,所以多数情况下我们关闭看门狗,是因为引入了看门狗之后就多了定时计数值处理的一些代码,这增加了程序的复杂性。

 

『本文转载自网络,版权归原作者所有,如有侵权请联系删除』

热门文章 更多
中国国产第三代核电实现并网发电