STM32獨立看門狗和窗口看門狗應(yīng)用的區(qū)別
1.關(guān)于看門狗的解釋不再說明,窗口看門狗簡而言之即只能看某個窗口期即某段時間內(nèi)才能夠喂狗。32的獨立看門狗是沒有中斷的,而窗口看門狗可根據(jù)需要配置中斷
2.關(guān)于獨立看門狗和窗口看門狗的應(yīng)用,手冊p316 即17.1節(jié)講的非常清楚。首先獨立看門狗和窗口看門狗都可用來監(jiān)視軟件程序是否正常運行,而具體而言,因為獨立看門狗獨立于系統(tǒng)時鐘單獨運行,因此其可用來監(jiān)視是否發(fā)生了硬件錯誤,比如說系統(tǒng)時鐘故障,看門狗仍然能夠起到重啟的作用,但是獨立看門狗的計時精度比較差,更多的應(yīng)用在獨立系統(tǒng)運行之外的對計時要求低的地方。而窗口看門狗是由系統(tǒng)時鐘提供的,因此其計時也會很準確,當然其也就只能用來檢測軟件故障,比如硬件故障系統(tǒng)時鐘壞了,自身也就不動了,也就沒有檢測硬件故障的作用,因此窗口看門狗是用在檢測應(yīng)用軟件是否準確運行時使用的。
當然我們用系統(tǒng)情況下其實完全可以不使用32提供的看門狗,我們自己某個任務(wù)的一個變量即實現(xiàn)看門狗的功能了。
3.另外注意,看門狗只是解決軟件異常,獨立看門狗稱為硬件看門狗是其是硬件操作復(fù)位,并且是自己獨立于系統(tǒng)主頻的時鐘,但是如果硬件都出問題了比如溫度過高,獨立看門狗自身時鐘都無法運行了,也就起不到看門狗的作用了
4.有硬件看門狗時需注意對硬件仿真的影響:
由于添加硬件看門狗,我們硬件仿真調(diào)試期間很容易(時間大于看門狗喂狗時間)有系統(tǒng)復(fù)位,這必然導(dǎo)致程序與仿真不同步問題,因此硬件仿真最好提前關(guān)閉看門狗。