原创 再驳"主程序喂狗论"

2006-12-28 22:42 6074 8 8 分类: MCU/ 嵌入式
再驳"主程序喂狗论"
mood.gif hotpower 发表于 2006-3-4 09:02 AVR 单片机 ←返回版面 按此察看该网友的资料 按此把文章加入收藏夹 按此编辑本帖举报该贴


主程序活着比死了更难受!!!

所以没有"双向应答"机制的主程序强喂狗方式还是有漏洞的.

由于中断被无意关断,那么主程序实际就只干傻喂狗功能,这种不工作也不死的

程序要它何用???

所以我喜欢在主循环内刷新中断标志,即再次打开自己所需的全部中断.

在主循环内判中断进入标志(或中断进入次数)再喂狗.

或在主循环内设置主循环内驻留标志(表示中断是从主循环跳入的),再在中断中

"主程序不飞可是中断被关断"将会如何???

一般是定时中断(或OS的节拍中断)中喂狗,因为这种喂狗发生喂狗时间恒定,狗不得胃病.

中断中喂狗后清除那个主循环内驻留标志,这样:

1.如果主程序飞,则定时中断照常工作时,将收不到那个主循环内驻留标志,则不喂狗(硬件看门狗),若无硬件看门狗,则定时中断数次后,强行软件复位!!!(起到了软件看门狗的作用)

2.若主程序不飞,且主循环强制刷新中断标志,一般都能定时中断,即使不能中断,

则系统得不到喂狗,则硬件看门狗动作,系统复位.

从上2种情况分析,中断喂狗的好处还能兼职软件看门狗的作用!!!


http://bbs.21ic.com/club/bbs/ShowAnnounce.asp?v=&ID=1998935


 



hotpower 发表于 2006-3-4 09:21 AVR 单片机 ←返回版面 按此察看该网友的资料 按此把文章加入收藏夹 按此编辑本帖

"狗在外面有吃的了,它回到家之后还会饿吗?"---回复00


狗吃肉的时候必须有主人在家中(主程序)的令牌,否则贪吃是会误大事的.

好狗肯定会在没得到令牌(主人已被敌人干倒)时,自尽殉葬主人的.

就像人酒后驾车一样的道理.
PARTNER CONTENT

文章评论0条评论)

登录后参与讨论
EE直播间
更多
我要评论
0
8
关闭 站长推荐上一条 /3 下一条