蘇大arm cortex-m4kinetis光盤sd fsl k60分章閱讀中文_第1頁
蘇大arm cortex-m4kinetis光盤sd fsl k60分章閱讀中文_第2頁
蘇大arm cortex-m4kinetis光盤sd fsl k60分章閱讀中文_第3頁
蘇大arm cortex-m4kinetis光盤sd fsl k60分章閱讀中文_第4頁
蘇大arm cortex-m4kinetis光盤sd fsl k60分章閱讀中文_第5頁
已閱讀5頁,還剩10頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、第 23 章 看門狗定時(shí)器(WDOG)23.1 簡(jiǎn)介注意:模塊的特定實(shí)現(xiàn)細(xì)節(jié)詳見配置章節(jié)??撮T狗定時(shí)器(WDOG)在時(shí)鐘監(jiān)視系統(tǒng)功能,如果系統(tǒng)錯(cuò)誤就復(fù)位它。產(chǎn)生錯(cuò)誤的原因有:代碼跑飛,一個(gè)安全關(guān)鍵系統(tǒng)中的系統(tǒng)時(shí)鐘的停止會(huì)引起嚴(yán)重的通過與。在這些情形下,看門狗把系統(tǒng)帶到一個(gè)安全操作的狀態(tài)。看門狗的定期通訊來監(jiān)視系統(tǒng)的操作,通常知道的是服務(wù)或者更新看門狗。如果周期的更新沒有發(fā)生,看門狗復(fù)位系統(tǒng)。23.2 特點(diǎn)看門狗定時(shí)器的特點(diǎn)包括:獨(dú)立的時(shí)鐘源輸入(獨(dú)立于 CPU/總線時(shí)鐘)。時(shí)鐘源選擇有:LPO 振蕩器外部系統(tǒng)時(shí)鐘沒有鎖定的序列允許更新只能寫一次的 WDOG 控制/配置位所有看門狗控制/配置位在

2、未鎖定情形下的 256 總線時(shí)鐘周期中只能寫一次。用戶需要在后的 256 總線時(shí)鐘周期內(nèi)更新這些位。如果更新這些位失敗,復(fù)位系統(tǒng)??删幊痰幕?WDOG 時(shí)鐘周期的超時(shí)周期。測(cè)試 WDOG 定時(shí)器的能力,通過指示看門狗測(cè)試的標(biāo)志復(fù)位??焖贉y(cè)試快速測(cè)試的小的超時(shí)值。字節(jié)測(cè)試定時(shí)器一次測(cè)試單個(gè)的字節(jié)。只讀WDOG 定時(shí)器允許動(dòng)態(tài)測(cè)試 WDOG 定時(shí)器是否是可以操作的注意:在總線時(shí)鐘上運(yùn)行看門狗時(shí),讀看門狗定時(shí)器計(jì)數(shù)器可能得不到精確的計(jì)數(shù)值。窗口刷新選項(xiàng)提供了比期望要快的程序流的魯棒性檢查可編程的窗口窗口外更新導(dǎo)致復(fù)位魯棒的刷新機(jī)制在 20 個(gè)時(shí)鐘周期內(nèi)寫 0 xA602 和 0 xB480 到 W

3、DOG 刷新寄存器復(fù)位時(shí) WDOG 計(jì)數(shù)器復(fù)位可配置的超時(shí)中斷提供調(diào)試。在 256 個(gè)總線時(shí)鐘周期之后允許復(fù)位。23.3功能概述圖 23-1 顯示了看門狗的操作。N 和 K 的值為:N=256 K=20看門狗是一個(gè)失敗安全機(jī)制,一旦因?yàn)?CPU 時(shí)鐘停止或者代碼執(zhí)行跑飛,可以把系統(tǒng)帶到一個(gè)可知的開始狀態(tài)。在最簡(jiǎn)單的形式下,看門狗持續(xù)在時(shí)鐘源下運(yùn)行,期望周期性地取得服務(wù),失敗的話就復(fù)位系統(tǒng)。這確保了的正確執(zhí)行,不會(huì)在一個(gè)沒有計(jì)劃的方向上跑飛。要達(dá)到的超時(shí)值去達(dá)到應(yīng)用的需要。調(diào)整服務(wù)的周期或者看門狗定時(shí)器用戶可以選擇一個(gè)窗口操作模式,該模式期望只有超時(shí)周期的特定窗口得到服務(wù)。此窗口外的看門狗服務(wù)會(huì)

4、引起復(fù)位。在該模式下的操作,用戶可以得到指示代碼是否比預(yù)期的跑的快。窗口長(zhǎng)度用戶是可以編程改變的。如果系統(tǒng)由于一個(gè)未知的持續(xù)的原因,更新/刷新看門狗失敗,系統(tǒng)可能陷入一個(gè)無止境的復(fù)位循環(huán)中。分析此種情形的原因,用戶可以編程在復(fù)位之后看門狗觸發(fā)一個(gè)中斷。在中斷服務(wù)例程中,可以分析系統(tǒng)棧來幫助調(diào)試。圖 23-1 看門作為了加強(qiáng)看門狗在系統(tǒng)中的獨(dú)立性,它運(yùn)行在一個(gè)獨(dú)立的 LPO 振蕩器時(shí)鐘之上。如果需要用戶可以通過控制一個(gè)寄存器位切換一個(gè)可選的時(shí)鐘源。23.3.1和更新看門狗用戶可以一個(gè)只寫一次的控制和配置寄存器去更新看門狗??撮T狗控制寄存器的 ALLOW_UPDATE 位必須置位。事實(shí)上的是通過在

5、 20 個(gè)總線周期內(nèi)寫 0 xC520 和 0 xD928 到一個(gè)指定的寄存器(WDOG_UNLOCK)來完成的。它開啟了一個(gè)和看門狗配置時(shí)間(WCT)長(zhǎng)度一樣的更新窗口,在 WCT 內(nèi)你可以更新配置和控制寄存器的位。在序列寫之后用戶不可以立即在一個(gè)總線周期內(nèi)更新寄存器,而要在一個(gè)周期之后。這些寄存器位只有在一次。之后更改如果在更新窗口內(nèi),沒有配置和控制寄存器更新,看門狗發(fā)布復(fù)位(或者中斷然后復(fù)位)給系統(tǒng)。在初始之后的 WCT 時(shí)間內(nèi)試圖影響的。在更新操作期間,看門狗定時(shí)器不會(huì)暫停,在看門狗,是沒有繼續(xù)運(yùn)行。在更新窗口關(guān)閉后,看門狗定時(shí)器重新開始,看門狗功能重新配置。更新特點(diǎn)對(duì)有初始的、看門狗

6、或有一個(gè)長(zhǎng)時(shí)間超時(shí)周期的非安全關(guān)鍵部分的應(yīng)用非常有效。這意味著應(yīng)用編碼者不用去管定期去服務(wù)看門狗。在應(yīng)用的關(guān)鍵部分的開始,看門狗可以在每一次需要的時(shí)候重新配置。出現(xiàn)這些給系統(tǒng)。的序列時(shí),看門狗發(fā)布復(fù)位(使能的話,中斷然后復(fù)位)寫 0 xC520 或 0 xD928 之外的任何值到寄存器ALLOW_UPDATE 置位,在鐘周期序列值的兩次寫之間的間隔超過 20 總線時(shí)序列的寫之間和在跟在一個(gè)成功的之后的WCT 時(shí)間的嘗試在兩次更新操作,會(huì)變得無法檢測(cè)。見 Watchdog Operation with 8-bit acs 作為 8 位訪問寄存器的 8 位相關(guān)準(zhǔn)則。注解:在和更新之間的上下文切換可

7、能導(dǎo)致一個(gè)看門狗復(fù)位。23.3.2 看門狗配置時(shí)間(WCT)為了防止無意的看門狗控制和配置寄存器位的修改,用戶只能在后的256 個(gè)總線時(shí)鐘周期內(nèi)更改它們。該窗口間隔就是看門狗配置時(shí)間(WCT)。另外,為了更新這些寄存器位只能在之后修改(即使在復(fù)位之后)。用戶必須在系統(tǒng)復(fù)位后在 WCT 時(shí)間內(nèi)寄存器,失敗的話看門狗發(fā)布一個(gè)復(fù)位到系統(tǒng)。為了更精確,你必須在復(fù)位后的 WCT 時(shí)間內(nèi)寫序列至少第一個(gè)字。一旦這完成,你就獲得了另外的 20 個(gè)時(shí)鐘周期(在序列字之間的最大間隔)去完成操作。之后,確保你沒有忘記配置看門狗,如果在之后的WCT 時(shí)間內(nèi)所有看門狗控制和配置寄存器沒有被更新,則看門狗發(fā)布一個(gè)復(fù)位。

8、在該窗口關(guān)閉或第一次寫之后,這些寄存器位被鎖定不會(huì)改變??撮T狗定時(shí)器像通過和更新操作進(jìn)行的默認(rèn)配置運(yùn)行和更新操作可以拓展到最大 2xWCT 時(shí)間+20 總線時(shí)鐘周期的總和。因此必須確??撮T狗的超時(shí)值大于 2xWCT 時(shí)間+20 總線時(shí)鐘周期的總和。只有在 WCT 窗口關(guān)閉之后,只能寫一次的寄存器里的更新會(huì)產(chǎn)生效果。以下情況的改變會(huì)直接產(chǎn)生影響:停止、等待、調(diào)試模式使能位備用的模式使能位 IRQ_RST_EN 位更新看門狗的操作在 WCT 內(nèi)會(huì)變得不可檢測(cè)。23.3.3 更新看門狗看門狗選擇了魯棒的更新機(jī)制。一個(gè)有效的更新是在 20 個(gè)時(shí)鐘周期內(nèi)寫 0 xA602 和 0 xB480 到看門狗更

9、新寄存器。如果這兩個(gè)值的寫超過了 20 個(gè)時(shí)鐘周期或者除了這兩個(gè)值之外的值寫到了寄存器,一個(gè)看門狗復(fù)位(使能的話,中斷然后復(fù)位)發(fā)布到系個(gè)有效的更新使得看門狗定時(shí)器在下一個(gè)總線周期上操作變得不可測(cè)。見 Watchdog重新開始。在兩次更新序列的寫之間的試圖Operation with 8-bit acs 參考更新寄存器的 8 位。23.3.4 窗口的操作模式在該操作模式下看門狗被更新的超時(shí)周期內(nèi)出現(xiàn)限制。只有當(dāng)看門狗定時(shí)器增加超過了看門狗窗口寄存器定義的一個(gè)特定的值時(shí)刷新才被認(rèn)為是合法的。這就是所知道的在總的超時(shí)周期內(nèi)更新看門狗。如果在定時(shí)器到達(dá)窗口值之前試圖更新,看門狗產(chǎn)生一個(gè)復(fù)位(如果使能

10、的話,中斷然后復(fù)位)。當(dāng)然,如果根本沒有更新,看門的狗超時(shí),如果使能的話產(chǎn)生一個(gè)復(fù)位或者產(chǎn)生一個(gè)中斷然后復(fù)位。23.3.5 看門狗操作模式當(dāng)通過在看門狗狀態(tài)和控制寄存器的 WDOG_EN 位了看門狗,看門狗定時(shí)器復(fù)位到 0,計(jì)數(shù)停止直到你使能它或者通過系統(tǒng)復(fù)位再次使能。在該模式,看門狗定時(shí)器不能被更新(如果定時(shí)器被,沒有必要這么做)。然而,在非超時(shí)異常上仍然會(huì)產(chǎn)生一個(gè)復(fù)位(如果使能的話,中斷然后復(fù)位)(見復(fù)位和中斷產(chǎn)生)。你需要在使能看門狗之前看門狗。系統(tǒng)復(fù)位把看門狗帶出模式。低功耗操作模式在等待模式下,如果 WDOG 使能(WAIT_EN=1),它可以運(yùn)行在總線時(shí)鐘或者低功耗振蕩器時(shí)鐘(CL

11、K_SRC=x)上產(chǎn)生中斷(IRQ_RST_EN=1),接著超時(shí)復(fù)位。在復(fù)位之后,WDOG 復(fù)位計(jì)數(shù)器加 1。在總線時(shí)鐘門控的停止模式下,如果在停止模式(STOP_EN=1)下它使能, WDOG 只能在低功耗振蕩器時(shí)鐘(CLK_SRC=0)下運(yùn)行。在這種情況下,WDOG第二次運(yùn)行到超時(shí),然后它的備份電路產(chǎn)生復(fù)位。因此,如果你在 100ms 之后編程看門狗,然后進(jìn)入停止模式,復(fù)位將在 200ms 后發(fā)生。在這種情況下,無論 IRQ_RST_EN 位如何,都沒有中斷產(chǎn)生。在 WDOG 復(fù)位之后,WDOG 復(fù)位計(jì)數(shù)器將不會(huì)再增加。在降功率模式下,看門狗關(guān)閉。調(diào)試操作模式在調(diào)試模式下你可以編程看門狗通

12、過在看門狗控制寄存器的DBG_EN位)。它會(huì)引起在該模式下的持續(xù)時(shí)間里看門狗定時(shí)器暫停。寄存器讀寫被允許,意味著這樣的操作允許:更新、點(diǎn)恢復(fù)操作。等。在退出模式之后,定時(shí)器從暫停系統(tǒng)進(jìn)入到到調(diào)試模式不能避免系統(tǒng)在之后的WCT 內(nèi)強(qiáng)制配置看門狗狀態(tài)機(jī)制也暫停)。這些動(dòng)作失?。ǔ窍到y(tǒng)總線時(shí)鐘,在這種情況下仍然會(huì)引起復(fù)位(如果使能的話,中斷然后復(fù)位)到系統(tǒng)。所有導(dǎo)致系統(tǒng)復(fù)位的異常(見復(fù)位和中斷產(chǎn)生)在該模式下仍然是合法的。所以,如果一個(gè)異常條件發(fā)生、系統(tǒng)總線開啟,一個(gè)復(fù)位將會(huì)發(fā)生(如果使能的話,中斷然后復(fù)位)。復(fù)位之后在WCT 內(nèi)進(jìn)入調(diào)試模式的處理是不同的。WDOG 定時(shí)器保持為 0,沒有必要在

13、WCT 內(nèi)和配置定時(shí)器。在該狀態(tài)下你不能嘗試更新或者或者 WDOG,可能會(huì)導(dǎo)致未知行為發(fā)生。退出該模式時(shí),WDOG 定時(shí)器重新開始,WDOG 在 WCT 內(nèi)必須23.4 測(cè)試看門狗和配置。對(duì)于 IEC60730 或者其他安全標(biāo)準(zhǔn),監(jiān)視安全功能的事物必須被測(cè)試,且測(cè)試需要有一定的容錯(cuò)能力。為了測(cè)試看門狗,它的主定時(shí)器和它的相關(guān)比較和復(fù)位邏輯必須被測(cè)試。為此,看門狗需要實(shí)現(xiàn)的測(cè)試為快速測(cè)試和字節(jié)測(cè)試。當(dāng)有一個(gè)控制位讓看門狗進(jìn)入到測(cè)試模式(功能性)時(shí),有一個(gè)主要的測(cè)試控制位一旦被設(shè),直到復(fù)位,將地測(cè)試模式。對(duì)于運(yùn)行一個(gè)特別的測(cè)試,首選是功能測(cè)試。之后,設(shè)置一個(gè)特定的測(cè)試模式位,讓看門狗進(jìn)入功能測(cè)試模

14、式。設(shè)置該位自動(dòng)地將看門狗定時(shí)器切換連接到一個(gè)快速的時(shí)鐘源。時(shí)鐘源的切換是為了獲得更快的超時(shí)時(shí)間,因而也是一個(gè)快速測(cè)試。在一個(gè)成功的測(cè)試?yán)?,定時(shí)器在到達(dá)編程的超時(shí)值時(shí)而超時(shí),然后產(chǎn)生一個(gè)系統(tǒng)復(fù)位。注意:由于看門狗測(cè)試產(chǎn)生復(fù)位之后,你必須嚴(yán)格按照和配置看門狗的。步驟進(jìn)試模式下,刷新、操作和中斷在不會(huì)自動(dòng)快速測(cè)試在該測(cè)試中,看門狗定時(shí)器的超時(shí)值被編程為一個(gè)非常小的值從去獲得快速超時(shí)。看門狗快速測(cè)試和正常功能模式的唯一區(qū)別是快速測(cè)試的測(cè)試模式位被置位。它允許看門狗復(fù)位機(jī)制的快速測(cè)試。字節(jié)測(cè)試字節(jié)測(cè)試實(shí)現(xiàn)更徹底的看門狗定時(shí)器測(cè)試。在該測(cè)試中,定時(shí)器被分解為獨(dú)立運(yùn)行的字節(jié)階段,測(cè)試超時(shí)值寄存器的相應(yīng)字節(jié)

15、數(shù)。圖 23-2 解釋了分割概念:每一個(gè)階段是一個(gè) 8 位同步計(jì)數(shù)器,之后是產(chǎn)生溢出信號(hào)的組合邏輯。該溢出信號(hào)使能 N+1 階段。在該測(cè)試模式下,當(dāng)一個(gè)獨(dú)立的字節(jié) N 被測(cè)試,字節(jié) N-1 強(qiáng)制載入 0 xFF,這兩個(gè)字節(jié)允許脫離時(shí)鐘源。這樣做,從階段 N-1 來的溢出信號(hào)立即產(chǎn)生,使能計(jì)數(shù)階段 N。第 N 階段運(yùn)行,和超時(shí)值寄存器的第 N 個(gè)字節(jié)比較。這樣,字節(jié)N 也和它和之前的階段連接一起測(cè)試。在字節(jié) N 測(cè)試階段,其他階段,N-2、N-3.圖 23-2 看門狗定時(shí)器字節(jié)分割和 N+1、N+2 階段測(cè)試不被使能。這些入值 0 xFF。這兩種測(cè)試機(jī)制實(shí)現(xiàn)了對(duì)計(jì)數(shù)器功能、比較和復(fù)位邏輯的全面測(cè)

16、試。注意:在這些測(cè)試期間不要使能看門狗中斷。如果需要,你必須確保有效的超時(shí)時(shí)間大于 WCT 時(shí)間。詳見復(fù)位和中斷產(chǎn)生章節(jié)。23.5 備份復(fù)位發(fā)生器的階段(除了計(jì)數(shù)器的最高階段)載備份復(fù)位生成最終的復(fù)位信號(hào)到系統(tǒng)。它有一個(gè)備份機(jī)制,在總線總線停止時(shí)加以保護(hù)并主狀態(tài)機(jī)器產(chǎn)生復(fù)位異常/中斷。看門狗定時(shí)器的超時(shí)是獨(dú)立作為復(fù)位到系統(tǒng)的。中間沒有系統(tǒng)復(fù)位的兩次連續(xù)的定時(shí)器超時(shí)會(huì)導(dǎo)致備份復(fù)位獨(dú)立產(chǎn)生超時(shí)信號(hào)作為復(fù)位給系統(tǒng)。23.6 復(fù)位和中斷生成看門狗會(huì)產(chǎn)生一個(gè)中斷的情況有(參考文檔中某些地方的異常):看門狗超時(shí)。在系統(tǒng)復(fù)位的 WCT 時(shí)間內(nèi)對(duì)看門狗的失敗。在之后的 WCT 窗口時(shí)間內(nèi)沒有更新控制和配置寄存

17、器。在 WCT窗口時(shí)間內(nèi)下列至少有一個(gè)寄存器必須被寫入,以避免復(fù)位:WDOG_ST_CTRL_H, WDOG_ST_CTRL_L WDOG_TO_VAL_H, WDOG_TO_VAL_L WDOG_WIN_H, WDOG_WIN_L WDOG_PRESCALER序列或者更新序列以外的值分別地被寫到或者更新寄存器。在序列的兩次值的寫之間存在超過 20 總線周期的間隔。在更新序列的兩次值的寫之間存在超過 20 總線周期的間隔??撮T狗也能產(chǎn)生中斷。如果 IRQ_RST_EN 被置位,上面提到的WDOG_ST_CTRL_L_被置位,就會(huì)產(chǎn)生中斷。WCT 時(shí)間之后會(huì)產(chǎn)生看門狗復(fù)位來保證看門狗是容錯(cuò)的。中

18、斷通過寫 1 到_被清除。在中斷和復(fù)位之間的 WCT 時(shí)間的間隔意味著 WDOG 超時(shí)值必須大于 WCT。否則,由于超時(shí)中斷產(chǎn)生,在那個(gè) WCT 間隔將產(chǎn)生第二次超時(shí)。這將會(huì)觸發(fā)備份復(fù)位產(chǎn)生器產(chǎn)生復(fù)位到系統(tǒng),過早地結(jié)束中斷服務(wù)例程的執(zhí)行。像看門狗復(fù)位計(jì)數(shù)的工作不會(huì)完成。23.7 內(nèi)存和寄存器定義該部分包括內(nèi)存和寄存器描述。WDOG 內(nèi)存23.7.1 看門狗狀態(tài)和控制寄存器(WDOG_STCTRLH)表 14-20 WDOG_STCTRLH 位域描述位域描述15預(yù)留只讀,為 014DISTESOG允許 WDOG 的功能測(cè)試模式被地。一旦被設(shè),只能通過復(fù)位被清除。一旦被設(shè),它不能被??撮T狗功能測(cè)試

19、模式不能被看門狗功能測(cè)試模式直到復(fù)位13-12BYTESEL1:0該兩位域選擇看門狗處于字節(jié)測(cè)試模式的測(cè)試字節(jié)。 00字節(jié) 0 選中01字節(jié) 1 選中絕對(duì)地址(十六進(jìn)制)寄存器名寬 度(位)權(quán)限復(fù)位值章節(jié)/頁4005_2000看門狗狀態(tài)和控制寄 存器 (WDOG_STCTRLH)16R/W01D3h23.7.1/5304005_2002看門狗狀態(tài)和控制寄 存器低位 (WDOG_STCTRLL)16R/W0001h23.7.2/5324005_2004看門狗超時(shí)值寄存器(WDOG_TOVALH)16R/W004Ch23.7.3/5324005_2006看門狗超時(shí)值寄存器低位(WDOG_TOVAL

20、L)16R/W4B4Ch23.7.4/5334005_2008看門狗窗口寄存器(WDOG_WINH)16R/W0000h23.7.5/5334005_200A看門狗窗口寄存器低位(WDOG_WINL)16R/W0010h23.7.6/5344005_200C看門狗刷新寄存器(WDOG_REFRESH)16R/WB480h23.7.7/5344005_200E看門狗寄存器(WDOG_UNLOCK)16R/WD928h23.7.8/5344005_2010看門狗定時(shí)器輸出寄 存器 (WDOG_TMROUTH)16R/W0000h23.7.9/5354005_2012看門狗定時(shí)器輸出寄 存器低位 (

21、WDOG_TMROUTL)16R/W0000h23.7.10/5354005_2014看門狗復(fù)位計(jì)數(shù)器(T)16R/W0000h23.7.11/5364005_2016看門狗預(yù)分頻寄存器(WDOG_PRESC)16R/W0400h23.7.12/53623.7.2 看門狗狀態(tài)和和控制寄存器低位(WDOG_STCTRLL)WDOG_STCTRLL 位描述位描述15中斷標(biāo)志。當(dāng)一個(gè)異常發(fā)生時(shí)置位。IRQRSTEN=1 是此標(biāo)志置位的前提=1導(dǎo)致中斷之后的 WCT 時(shí)間之后跟一個(gè)復(fù)位。中斷可以通過向該位寫 1 清除。系統(tǒng)字節(jié) 2 選中字節(jié) 3 選中11TESTSEL選擇看門狗定時(shí)器的測(cè)試類型。只有在

22、 TESOG 置位時(shí)才有效??焖贉y(cè)試。計(jì)時(shí)器運(yùn)行在正常操作。你可以加載一個(gè)小的超時(shí)值執(zhí)行一個(gè)快速測(cè)試。字節(jié)測(cè)試。定時(shí)器處于字節(jié)測(cè)試模式,定時(shí)器的獨(dú)立字節(jié)使能操作,和可編程的超時(shí)值的相應(yīng)字節(jié)比較超時(shí)比較。通過 BYTESEL1:0選擇測(cè)試字節(jié)。10TESOG看門狗處于功能測(cè)試模式。在該模式下,看門狗定時(shí)器和相關(guān)的比較、復(fù)位生成邏輯用于正確操作測(cè)試。定時(shí)器的時(shí)鐘為看門狗功能測(cè)試由主看門狗時(shí)鐘切換到快速輸入時(shí)鐘。TESTSEL 位選擇測(cè)試類型。9預(yù)留只讀,為 08STNDBYEN在備用模式使能或WDOG在備用模式WDOG在備用模式WDOG 使能7WAITEN在等待模式使能或WDOG在等待模式WDOG

23、在等待模式WDOG 使能6STOPEN在停止模式使能或WDOG在停止模式WDOG在停止模式WDOG 使能5DBGEN在調(diào)試模式使能或WDOG在調(diào)試模式WDOG在調(diào)試模式WDOG 使能4ALLOWUPDATE使能通過序列在初始配置窗口(WCT)關(guān)閉之后更新看門狗只寫一次的寄存器。 0 不允許更新只寫一次的 WDOG 寄存器1 WDOG 只寫一次寄存器可以更新3WINEN使能窗口模式窗口模式窗口模式使能2IRQRSTEN用于使能調(diào)試特征。該位的改變可以被立即更新,而不是在 WCT 之后更新。WDOG 超時(shí)只產(chǎn)生復(fù)位WDOG 超時(shí)首先產(chǎn)生中斷。在WCT 時(shí)間之后,產(chǎn)生復(fù)位1CLKSRC為 WDOG

24、計(jì)時(shí)器和其他計(jì)時(shí)操作選擇時(shí)鐘源。的時(shí)鐘源作為WDOG 時(shí)鐘(LPO 振蕩器)WDOG 時(shí)鐘源來自于替換的時(shí)鐘源0WDOGEN使能或 WDOG 的操作。在 狀態(tài),看門狗計(jì)時(shí)器保持復(fù)位狀態(tài),但是其他異常情況可以觸發(fā)一個(gè)復(fù)位/中斷。不管 WDOG 使能或者 ,該位值的改變必須保持超過一個(gè) WDOG_CLK 周期。WDOGWDOG 使能23.7.3(WDOG_TOVALH)看門狗超時(shí)值寄存器WDOG_TOVALH 位描述23.7.4看門狗超時(shí)值寄存器低位(WDOG_TOVALL)看門狗超時(shí)值必須最小設(shè)置為四個(gè)看門狗時(shí)鐘周期。這是考慮到看門狗時(shí)鐘域新設(shè)置起作用的延時(shí)。WDOG_TOVALL 位描述23.

25、7.5 看門狗窗口寄存器(WDOG_WINH)窗口寄存器的值必須小于超時(shí)寄存器值。WDOG_WINH 位描述位描述15-0WINHIGH定義看門狗窗口操作模式的 32 位窗口值的高 16 位。 是看門狗時(shí)鐘周期。在該模式下,看門狗只在定時(shí)器值大于等于窗口長(zhǎng)度的值才能被更新。窗口外的更新會(huì)復(fù)位系統(tǒng)或者如果 IRQRSTEN 被設(shè),它會(huì)中斷然后復(fù)位系統(tǒng)。位描述15-0TOAVLHIGH定義看門狗定時(shí)器 32時(shí)值的低 16 位。是看門狗時(shí)鐘周期。位描述15-0TOAVLHIGH定義看門狗定時(shí)器 32時(shí)值的高 16 位。是看門狗時(shí)鐘周期。復(fù)位也可清除。14-0預(yù)留保留位。注意:不要修改此位域的值。23

26、.7.6看門狗窗口寄存器低位(WDOG_WINL)窗口寄存器的值必須小于超時(shí)寄存器值。WDOG_WINL 位描述23.7.7看門狗刷新寄存器(WDOG_REFRESH)WDOG_REFRESH 位描述23.7.8寄存器(WDOG_UNLOCK)看門狗WDOG_UNLOCK 位描述位描述15-0WDOGUNLOCK你可以寫一個(gè) 序列值到該寄存器來讓只能寫一次的寄存器再一次可寫。 序列是在 20 個(gè)總線周期內(nèi)寫 0 xC520、0 xD928。一個(gè)有效的 序列長(zhǎng)度與可以更新寄存器的 WCT 時(shí)間一樣。寫除了上面提到的之外的值或者序列用時(shí)超過 20 總線周期,系統(tǒng)復(fù)位;如果 IRQRESTEN 被置

27、位,則先中斷然后系統(tǒng)復(fù)位。 序列只在 ALLOWUPDATE 置位時(shí)有效。位描述15-0WDOGREFRESH看門狗刷新寄存器。在 20 個(gè)總線周期內(nèi)寫 0 xA602、0 xB480 到此寄存器會(huì)刷新 WDOG,并且會(huì)防止再次復(fù)位系統(tǒng)。寫除了上文提到的序列之外的值或者如果寫序列花費(fèi)比 20 個(gè)總線周期長(zhǎng),系統(tǒng)復(fù)位或者如果 IRQRSTEN 置位,產(chǎn)生中斷然后系統(tǒng)復(fù)位。位描述15-0WINLOW定義看門狗窗口操作模式的 32 位窗口值的低 16 位。 是預(yù)分頻的看門狗時(shí)鐘周期。在該模式下,看門狗只在定時(shí)器值大于等于窗口長(zhǎng)度的值才能被更新。窗口外的更新會(huì)復(fù)位系統(tǒng)或者如果 IRQRSTEN 被設(shè),

28、它會(huì)中斷然后復(fù)位系統(tǒng)。23.7.9 看門狗定時(shí)器輸出寄存器(WDOG_TMROUTH)23.7.10 看門狗定時(shí)器輸出寄存器低位(WDOG_TMROUTL)在停止模式下,WDOG_TIMER_OUT 將保持停止?fàn)顟B(tài)前看門狗定時(shí)器的值。在離開停止模式后,WDOG_TIMER_OUT 開始下一次看門狗定時(shí)前將會(huì)出現(xiàn)最長(zhǎng)可達(dá) 1 個(gè) WDOG_CLK 周期+3 個(gè)總線時(shí)鐘周期的延遲。WDOG_TMROUTL 位描述23.7.11看門狗重置計(jì)數(shù)寄存器(T)T 位描述23.7.12看門狗預(yù)分頻器寄存器(WDOG_PRESC)WDOG_PRESC 位描述位描述15-0T計(jì)數(shù)看門狗復(fù)位次數(shù)。該寄存器只在 P

29、OR 時(shí)復(fù)位。寫 1 到該位會(huì)清除該位,用來可以清除寄存器的內(nèi)容。位描述15-0TIMEROUTLOW顯示看門狗計(jì)時(shí)器的低 16 位值。位描述15-0TIMEROUTHIGH顯示看門狗計(jì)時(shí)器的高 16 位值。23.8 看門狗的 8 位操作這一節(jié)將看門狗的 8 位23.8.1 一般原則當(dāng)對(duì)看門狗的 16 位寄存器進(jìn)行 8 位數(shù)據(jù)的存取時(shí),即要注意事項(xiàng)。寄存器的兩個(gè)字節(jié)時(shí),必須在你的代碼中相鄰進(jìn)行 8 位的。23.8.2 基于 8 位存取的刷新和操作向刷新和寄存器寫入的刷新/更新序列將導(dǎo)致系統(tǒng)復(fù)位。以8 位方式存取這些寄存器,寫入一個(gè)正確的值至少需要2 個(gè)總線時(shí)鐘周期,這意味著有一個(gè)時(shí)鐘周期寄存器

30、中的值是的。因此,系統(tǒng)會(huì)復(fù)位,即使目的是寫正確的值到刷新/有些不同。盡管刷新/寄存器。所以這里需要注意,8 位存取的異常情況稍微序列的正確值的匹配是同初始定義值比較,值的匹配卻是在 8 位的基礎(chǔ)上而不是 16 位。這意味著如果刷新/寄存器的高字節(jié)包含序列高字節(jié)以外的值,則會(huì)被認(rèn)為是異常,將導(dǎo)致一次復(fù)位或中斷然后復(fù)位。對(duì)低字節(jié)而言也是這樣。下面舉刷新操作為例,試圖寫入序列 0 xA602、0 xB480 到刷新寄存器。表 23-14 8 位刷新如表 23-14 所述,刷新寄存器保持初始復(fù)位值。此后,兩次的 8 位存取方式將刷新序列的第一個(gè)值寫入到了寄存器。中間的一次寫操作 Write1,沒有引起

31、不匹配異常。通過接下來的兩次的 8 位方式將序列的第二個(gè)值寫入寄存器實(shí)現(xiàn)了一次成功的刷新序列。注意到第二個(gè)值的匹配只在完全的 16 位值正確寫入時(shí)進(jìn)行,即在 Write4。因此第一個(gè)值寫入后的 20位描述15-11預(yù)留只讀,值為 010-8PRESCVAL看門狗時(shí)鐘源的 3 位預(yù)分頻位。0 值指示 WDOG 輸入時(shí)鐘沒有預(yù)分頻??撮T狗時(shí)鐘除以(PRESCVAL+1)來提供預(yù)分頻的 WDOG CLK。7-0預(yù)留只讀,值為 0個(gè)時(shí)鐘周期內(nèi)寫第二個(gè)值的檢查通過測(cè)量 write2 和 write4 之間的間隔實(shí)現(xiàn)。必須重申,刷新或序列第一個(gè)值和第二個(gè)值匹配成功的條件并未改變,這里只是放松了檢測(cè)錯(cuò)誤值的標(biāo)準(zhǔn),即基于 8 位的作都仍需要滿足刷新看門狗一節(jié)中給出的原則。方式。任何 16 位操23.9 看門作的限制此部分將

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論