请问STM32如何关使能独立看门狗?

atghjiq   2009-2-23 19:49 楼主
大家好!
我现在用到看门狗,但是发现看门狗只能开,不能关。
而我的设备在待机的时候,会进入STOP模式,那样长时间不操作,看门狗就溢出复位了:(
请问这个该怎么处理?
谢谢。

回复评论 (6)

STM32的独立看门狗,一旦启动就没办法关闭

你的问题有2种办法处理:

1)进入STOP模式前,喂一次狗,然后在狗没咬人之前,通过RTC唤醒CPU喂一次狗,这样不断重复。

2)进入STOP模式时停止LSI,唤醒后再恢复LSI。

第一个办法比较好,可以保证看门狗始终帮你看门。第二个办法的危险是,在唤醒CPU时,如果还未来得及恢复LSI,程序就跑飞了,你哭都来不及了。
点赞  2009-2-23 20:44

恩,我试一下第2种方法吧。

                                 51的看门狗都可以开关使能,这个有点……
点赞  2009-2-24 10:11

“51的看门狗都可以开关使能”,你是否认为这是好的功能?

看门狗的作用是监视系统的运行,如果能够被关闭,如何能真正地起到监视系统的作用?不能真正起作用的看门狗,又有什么意义?

从技术上讲,看门狗的作用之一是为了在程序跑乱的情况下,可以复位系统并恢复其功能。如果看门狗能够被关闭,就意味着跑乱的程序有可能关闭看门狗,这样等于没有看门狗,而不能被关闭的看门狗则不会有这个问题。


51有此功能,并不能说明这是一个好的功能!
点赞  2009-2-24 11:40

哦,谢谢香主的解释。

                                 香主,好像启动了看门狗以后,就不能关闭LSI了:(
点赞  2009-2-24 17:33

哈哈,我忽略了这一点

确实,如果LSI不能关闭,你唯一的选择就是使用2楼说的第2种方法了。


5楼引用的这个说明,再次印证了我在4楼说的理由,看门狗是不能被关闭的,不管以什么方式。
点赞  2009-2-24 17:43
引用: mcuer 发表于 2009-2-24 17:43
确实,如果LSI不能关闭,你唯一的选择就是使用2楼说的第2种方法了。5楼引用的这个说明,再次印证了我 ...

误导别人啊!明明二楼说的第二种方法不行。
点赞  2015-6-25 11:21
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复