看門狗定時器(WDOG)模塊是一個獨(dú)立的定時器,可供系統(tǒng)使用。它提供了一個安全功能,以確保軟件按計劃執(zhí)行,并且MCU不會陷入無限循環(huán)或執(zhí)行非預(yù)期代碼。如果WDOG模塊在一定時間內(nèi)未進(jìn)行刷新,則會重置MCU。WDOG模塊提供故障安全機(jī)制,以確保在系統(tǒng)故障(如MCU時鐘停止或在軟件代碼中存在失控情況。看門狗計數(shù)器在可選擇的時鐘源下連續(xù)運(yùn)行,并期望定期進(jìn)行刷新。如果不是,則會生成復(fù)位觸發(fā)事件。WDOG具有用戶可訪問的16位寄存器,用于配置、操作和監(jiān)視看門狗定時器的狀態(tài)。
在MIMXRT1176/MIMXRT1175/MIMXRT1173工業(yè)級CVM8A,汽車級AVM8A,消費(fèi)級DVMAA中,都有包含雙核,M7和M4內(nèi)核。關(guān)于兩個內(nèi)核禁用看門狗是如何操作的呢?它有4個WDOG定時器,WDOG提供0.5至128秒的超時時間,時間分辨率為0.5秒。
?看門狗定時器(WDOG1、2):WDOG1和WDOG2提供了避免意外事件或編程錯誤的方法來防止系統(tǒng)故障。
?看門狗定時器(WDOG3、4):是高可靠性的獨(dú)立定時器可供系統(tǒng)使用。WDOG3用于M7和WDOG4用于M4。
在參考手冊第79.5.2節(jié)復(fù)位器件后,禁用看門狗中顯示的代碼片段如下。
實際上MIMXRT1176雙核器件的看門狗禁用操作,用于M4內(nèi)核和M7內(nèi)核,所以每個內(nèi)核代碼都需要禁用看門狗。在幾個SDK示例中(如evkmimxrt1170_erc_matrix_multiply_rpmsg_rtos_cm7),兩個內(nèi)核似乎以相同的方式禁用相同的看門狗WDOG1、WDOG2、WDOG3、WDGO4。system_MIMXRT1176_cm7.c和system_MIMXRT1176_cm4.c文件中的處理都是相同的,但默認(rèn)是M7內(nèi)核先啟動,而M4 后啟動的(在默認(rèn)的核心啟動序列中),因此,在M4內(nèi)核的 SystemInit()中添加冗余代碼(等待ULK和RCS位被清除)。如下是SDK 禁用看門狗代碼,供參考。
SDK_2_12_1_MIMXRT1170-EVK/devices/MIMXRT1176/system_MIMXRT1176_cm7.c :
SDK_2_12_1_MIMXRT1170-EVK/devices/MIMXRT1176/system_MIMXRT1176_cm4.c :
審核編輯:湯梓紅
-
mcu
+關(guān)注
關(guān)注
146文章
17326瀏覽量
352667 -
看門狗
+關(guān)注
關(guān)注
10文章
566瀏覽量
70951 -
定時器
+關(guān)注
關(guān)注
23文章
3256瀏覽量
115392
原文標(biāo)題:MIMXRT1176中禁止看門狗操作
文章出處:【微信號:嵌入式 MCU,微信公眾號:嵌入式 MCU】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論