欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

標題: 單片機看門狗與中斷沖突問題 [打印本頁]

作者: 同凨    時間: 2019-9-4 21:08
標題: 單片機看門狗與中斷沖突問題
程序中添加了看門狗保護,防止死機。喂狗采用定時器中斷實現,該中斷設置了最高優先級。但該程序與源程序的定時器0中斷、串口中斷產生沖突,源程序定時器0中斷用于產生時間,喂狗中斷會導致計時不準確,串口通信不可靠等問題。求助,謝謝。

作者: aslin    時間: 2019-9-4 23:08
調整喂狗時間不就行了
作者: Y_G_G    時間: 2019-9-5 01:48
喂狗怎么用定時器中斷來干呢?它會被更高等級的中斷打斷的,很有可能喂狗不成功而復位的
你可以設定看門狗的時間為幾秒鐘,放在主函數或者循環中,看門狗的時間要很長,但喂狗的時間大概是是幾百毫秒喂一次,這樣一來,多個中斷被觸發的時候,看門狗還有很長的時間
作者: 同凨    時間: 2019-9-5 09:16
Y_G_G 發表于 2019-9-5 01:48
喂狗怎么用定時器中斷來干呢?它會被更高等級的中斷打斷的,很有可能喂狗不成功而復位的
你可以設定看門狗的 ...

用的是c8051f020單片機,22.1184MHZ晶振,看門狗的復位時長計算公式為[4^(3+WDTCN[2:0])] × TSYSCLK ,沒辦法實現很長時間的設置,最多幾十毫秒
作者: Y_G_G    時間: 2019-9-5 22:27
這IC的看門狗時鐘是不可調節的,用22M晶振的話,看門狗最多可以是50毫秒左右
但這么長的時間還不行嗎?
如果還不行的話就只能是到處喂狗了,你可以在別的中斷進入之后就喂狗一次,延時函數喂狗一次,這都沒有關系的了,但你不能專門的一個中斷來喂狗,這個中斷一旦被更高等級的中斷打斷了,就很有可能會復位的
你可以這樣:進入串口中斷喂一次,進入定時器中斷喂一次,保證在進入執行時間很長的函數之后,第一件事就是喂狗
作者: 同凨    時間: 2019-9-6 08:54
Y_G_G 發表于 2019-9-5 22:27
這IC的看門狗時鐘是不可調節的,用22M晶振的話,看門狗最多可以是50毫秒左右
但這么長的時間還不行嗎?
如果 ...

謝謝,也只能這樣試試了




歡迎光臨 (http://m.raoushi.com/bbs/) Powered by Discuz! X3.1