STM32單片機中有兩只看門狗,分別是獨立看門狗和窗口看門狗。這兩只看門狗有什么區(qū)別,今天來看一下。
1. 時鐘源的區(qū)別
獨立看門狗使用的是內(nèi)部低速時鐘,其頻率為40kHz,但是這個40KHz不是準確的,其大致的范圍是(30-60)KHz。該時鐘與外設(shè)時鐘無關(guān),所以不受系統(tǒng)晶振影響。
窗口看門狗使用的是PCLK1的時鐘,該時鐘與晶振相關(guān)。
2. 喂狗時間不同
獨立看門狗喂狗時只要下限大于0就可以,上限是0XFFF。
而窗口看門狗必須在一個區(qū)域內(nèi)喂狗才可以,上限是0x7F,下限是0X40,
3. 計數(shù)器不同
獨立看門狗的計數(shù)器是12位遞減的,即最大值是0XFFF;
窗口看門狗的計數(shù)器是7位遞減的,即最大值是0X7F;
4. 產(chǎn)生結(jié)果不同
獨立看門狗時,如果超時不喂狗,則直接產(chǎn)生復(fù)位,程序從頭執(zhí)行;
獨立看門狗會在計數(shù)器到達0X40時產(chǎn)生中斷,在0X3F時產(chǎn)生復(fù)位,所以可以把獨立看門狗看成是一種中斷。
使用用途舉例
獨立看門狗可以用來防止程序跑飛,在程序中開啟看門狗,定時喂狗,尤其在通訊中使用廣泛,當邏輯處理不當,使程序一直處于發(fā)送或接收狀態(tài)不退出時,這時獨立看門狗可以使程序復(fù)位,程序從頭執(zhí)行。
窗口看門狗可以產(chǎn)生中斷,利用這一特點可以用來進行數(shù)據(jù)保存,當產(chǎn)生窗口看門狗中斷時,可以用來保存數(shù)據(jù)。
免責聲明:本文內(nèi)容由21ic獲得授權(quán)后發(fā)布,版權(quán)歸原作者所有,本平臺僅提供信息存儲服務(wù)。文章僅代表作者個人觀點,不代表本平臺立場,如有問題,請聯(lián)系我們,謝謝!