新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > LPC2103之看門狗定時器

LPC2103之看門狗定時器

作者: 時間:2016-11-29 來源:網(wǎng)絡(luò) 收藏
WatchDog Timer (WDT)

page225

看門狗定時器的定時范圍為TPCLK x 256 x 4到TPCLK x 232 x 4)。
看門狗定時器的設(shè)置步驟如下:
?在WDTC寄存器設(shè)置看門狗定時器的重裝值
?在WDMOD寄存器設(shè)置模式
?先后寫入0xaa和0x55到WDFEED寄存器以啟動看門狗定時器
?為防止看門狗產(chǎn)生復(fù)位/中斷,必須在看門狗計數(shù)器下溢前進(jìn)行喂狗

當(dāng)看門狗定時器下溢,程序計數(shù)器將如同產(chǎn)生了外部復(fù)位信號一樣從0x00000000地址重新啟動??撮T狗定時輸出標(biāo)志(WDTOF)能夠檢測并是否看門狗導(dǎo)致了復(fù)位。WDTOF標(biāo)志位必須軟件清除。

看門狗相關(guān)寄存器

寄存器功能訪問復(fù)位值地址
WDMOD看門狗模式寄存器,這個寄存器包括了看門狗定時器的基本模式和狀態(tài)R/W00xE000 0000
WDTC看門狗定時器常量寄存器,存放定時器計數(shù)值R/W0XFF0xE000 0004
WDFEEDWatchdog Feed sequence register,寫入oxaa和0x55重新加載計數(shù)值WONA0xE000 0008
WDTV看門狗定時器值寄存器,該寄存器讀出定時計數(shù)當(dāng)前值RO0XFF0xE000 000C



Watchdog Mode register (WDMOD - 0xE000 0000)

看門狗操作模式選擇

WDENWDRESET操作模式
0X (0 or 1)不啟動看門狗定時器
10看門狗中斷模式。運(yùn)行看門狗中斷,但WDRESET不使能。當(dāng)看門狗定時器下溢,WDINT標(biāo)志位將置位并且產(chǎn)生看門狗中斷請求
11看門狗復(fù)位模式。運(yùn)行看門狗中斷且WDRESET使能。看門狗定時器下溢將復(fù)位控制器,


一旦WDEN或WDRESET位設(shè)置后將不能夠軟件清除,只有在外部復(fù)位或者看門狗定時器下溢時才會被清除。

當(dāng)看門狗定時器溢出時,看門狗定時器溢出標(biāo)志位WDTOF置位。該標(biāo)志位由軟件清除。
當(dāng)看門狗定時器溢出時,看門狗終端標(biāo)志位WDINT置位。任何復(fù)位發(fā)生時將清除該標(biāo)志位。

看門狗模式寄存器

信號功能復(fù)位值
0WDEN看門狗中斷使能位(只可設(shè)置)0
1WDRESET看門狗復(fù)位使能位(只可設(shè)置)0
2WDTOF看門狗定時器溢出標(biāo)志位0(僅在外部復(fù)位后)
3WDINT看門狗中端標(biāo)志位0
7:4-保留NA



Watchdog Timer Constant register (WDTC - 0xE000 0004)

設(shè)置定時計數(shù)值小于0x000000ff時,自動默認(rèn)為0x000000ff(此即最小定時計數(shù)值)。
看門狗定時器常量寄存器

信號功能復(fù)位值
31:0Count定時間隔周期計數(shù)值0x000000ff



Watchdog Feed register (WDFEED - 0xE000 0008)

連續(xù)順序?qū)懭?xaa和0x55到該寄存器將重新加載WDTC值到看門狗定時器中。如果WDMOD寄存器中使能了看門狗,此時也將啟動看門狗定時器。在WDMOD寄存器設(shè)置了WDEN位還不足以使能看門狗(必須連續(xù)順序?qū)懭?xaa和0x55到WEFEED寄存器以鎖存)。在看門狗產(chǎn)生中斷/復(fù)位之前必須連續(xù)順序?qū)懭?xaa和0x55進(jìn)行喂狗


Watchdog Timer Value register (WDTV - 0xE000 000C)

WDTV寄存器用于讀看門狗定時器的當(dāng)前值。

信號功能復(fù)位值
31:0Count定時間隔周期計數(shù)值0x000000ff




關(guān)鍵詞: LPC2103看門狗定時

評論


技術(shù)專區(qū)

關(guān)閉