本帖最后由 kkhkbb 于 2018-3-13 08:40 編輯
一、概述 1、 WWDG看門狗簡介 IWDG看門狗存在這樣一個問題,如果在喂狗的間隔期間,程序跑飛后又正確歸位,獨(dú)立看門狗無法發(fā)現(xiàn)這樣的錯誤,程序?qū)⒋嬖诤艽蟮奈kU。與IWDG看門狗不同,WWDG看門狗需要在一個規(guī)定的時間范圍內(nèi)喂狗才有效,這樣可以較為有效的解決IWDG看門狗存在的問題?梢愿鶕(jù)WWDG看門狗通常被用來監(jiān)測由外部干擾或不可預(yù)見的邏輯條件造成的應(yīng)用程序背離正常的運(yùn)行序列而產(chǎn)生的軟件故障。 2、 WWDG看門狗窗口說明 WWDG看門狗在使用時,除了使能時鐘和設(shè)置預(yù)分頻值外,還需要設(shè)置窗口和計(jì)數(shù)器初值。在芯片內(nèi)部,WWDG看門狗計(jì)數(shù)器是一個7位二進(jìn)制遞減計(jì)數(shù)器,當(dāng)它從0x40翻轉(zhuǎn)到0x3F時,系統(tǒng)會啟動復(fù)位。只有計(jì)數(shù)器在窗口值和0x40之間的時候,喂狗才是有效的。如圖7_0所示: 二、硬件電路 在iCore3雙核心開發(fā)板中,采用一個獨(dú)立的按鍵與STM32F407的PH15相連,限流電阻為1K。 三、實(shí)驗(yàn)原理 本次實(shí)驗(yàn)使用的是常開帶復(fù)位按鍵,從硬件電路上可以看出,當(dāng)按鍵沒有按下時,ARM芯片的ARM_KEY引腳讀取到的值是高電平,按鍵按下后讀取到的值為低電平,按鍵沒有按下是正常喂狗,當(dāng)按鍵按下后停止喂狗。 四、主函數(shù) 1.主函數(shù)
|