當前位置:首頁 > 單片機 > 單片機
[導(dǎo)讀]一、ATMEGA128數(shù)據(jù)手冊看門狗定時器看門狗定時器由獨立的1 Mhz 片內(nèi)振蕩器驅(qū)動。這是VCC= 5V 時的典型值。請參見特性數(shù)據(jù)以了解其他VCC電平下的典型值。通過設(shè)置看門狗定時器的預(yù)分頻器可以調(diào)節(jié)看門狗復(fù)位的時間間隔

一、ATMEGA128數(shù)據(jù)手冊

看門狗定時器

看門狗定時器由獨立的1 Mhz 片內(nèi)振蕩器驅(qū)動。這是VCC= 5V 時的典型值。請參見特性數(shù)據(jù)以了解其他VCC電平下的典型值。通過設(shè)置看門狗定時器的預(yù)分頻器可以調(diào)節(jié)看門狗復(fù)位的時間間隔,如P53 Table 22 所示??撮T狗復(fù)位指令WDR用來復(fù)位看門狗定時器。此外,禁止看門狗定時器或發(fā)生復(fù)位時定時器也被復(fù)位。復(fù)位時間有8 個選項。如果沒有及時復(fù)位定時器,一旦時間超過復(fù)位周期,ATmega128 就復(fù)位,并執(zhí)行復(fù)位向量指向的程序。具體的看門狗復(fù)位時序在P50 有說明。

為了防止無意之間禁止看門狗定時器或改變了復(fù)位時間,根據(jù)熔絲位M103C 和 WDTON 芯片提供了3 個不同的保護級別,如Table 21. 所示。安全級別0 相應(yīng)于ATmega103 的 設(shè)置。使能看門狗定時器則沒有限制。請參考P 54“ 改變看門狗定時器配置的時間序列”。

看門狗定時器控制寄存器- WDTCR

? Bits 7..5 – Res: 保留
保留位,讀操作返回值為零。

? Bit 4 – WDCE: 看門狗修改使能
清零WDE 時必須先置位WDCE,否則不能禁止看門狗。一旦置位,硬件將在緊接的4 個 時鐘周期之后將其清零。請參考有關(guān)WDE 的說明來禁止看門狗。工作于安全級別1 和2 時也必須置位WDCE 以修改預(yù)分頻器的數(shù)據(jù),如P 54 “ 改變看門狗定時器配置的時間序列” 所示。

? Bit 3 – WDE: 看門狗使能
WDE為"1“時,看門狗使能,否則看門狗將被禁止。只有在WDCE為"1“時WDE才能清零。以下為關(guān)閉看門狗的步驟:
1. 在同一個指令內(nèi)對WDCE 和WDE 寫"1“,即使WDE 已經(jīng)為"1“。
2. 在緊接的4 個時鐘周期之內(nèi)對WDE 寫"0”。
工作于安全級別2 時是永遠無法禁止看門狗定時器的。參見 P 54 “ 改變看門狗定時器配置的時間序列” 。

? Bits 2..0 – WDP2, WDP1, WDP0: 看門狗定時器預(yù)分頻器2, 1, 和0
WDP2、WDP1 和WDP0 決定看門狗定時器的預(yù)分頻器,如Table 22 所示。

下面的例子分別用匯編和C 實現(xiàn)了關(guān)閉WDT 的操作。在此假定中斷處于用戶控制之下 (比如禁止全局中斷) ,因而在執(zhí)行下面程序時中斷不會發(fā)生。

匯編代碼例程WDT_off:
; 置位 WDCE 和 WDE
ldir16, (1<outWDTCR, r16
; 關(guān)閉WDT
ldir16, (0<outWDTCR, r16
ret

C 代碼例程

voidWDT_off(void)
{

WDTCR = (1<
WDTCR = 0x00;
}

看門狗初始化程序

C 代碼例程

voidWDT_Init(void)

{

_WDR();//reset watchdog timer
WDTCR |= (1<WDTCR = 0x0F;//enable watchdog timer andset timeout value 1.9 sencond

}

改變看門狗定時器配置的時間序列

改變配置的序列根據(jù)不同的安全級別略有不同。下面將逐一說明。

安全級別0

這個模式與ATmega103 的看門狗操作相兼容??撮T狗的初始狀態(tài)是禁止的,可以沒有限制地通過置位WDE 來使能它,以及改變定時器溢出周期。禁止看門狗定時器時則需要遵 守有關(guān)WDE 的說明。

安全級別1

在這個模式下,看門狗定時器的初始狀態(tài)是禁止的,可以沒有限制地通過置位WDE 來使能它(例如:WDTCR|= (1<1. 在同一個指令內(nèi)對WDCE 和WDE 寫"1“,即使WDE 已經(jīng)為"1“。
2. 在緊接的4 個時鐘周期之內(nèi)同時對WDE 寫"0”,以及為WDP 寫入合適的數(shù)據(jù),而WDCE 則寫"0”。

安全級別2

在這個模式下,看門狗定時器總是使能的, WDE 的讀返回值為"1”。 改變定時器溢出周期需要執(zhí)行一個特定的時間序列:
1. 在同一個指令內(nèi)對WDCE和WDE寫"1“。雖然WDE總是為置位狀態(tài),也必須寫"1“以啟動時序。
2. 在緊接的4 個時鐘周期之內(nèi)同時對WDCE 寫"0”,以及為WDP 寫入合適的數(shù)據(jù)。WDE 的數(shù)值可以任意。

二、看門狗AVR-GCC例程

頭文件:#include ,包含看門狗復(fù)位命令 _WDR();

avr-libc 提供三個API 支持對器件內(nèi)部Watchdog 的操作,它們分別是:
wdt_reset() // Watchdog 復(fù)位
wdt_enable(timeout) // Watchdog 使能
wdt_disable() // Watchdog 禁止
調(diào)用上述函數(shù)前要包含頭文件 wdt.h ,wdt.h 中還定義Watchdog 定時器超時符號常量,它們用于為wdt_enable 函數(shù)提供timeout 值。符號常量分別如下:
符號常量值含意
WDTO_15MS Watchdog定時器15 毫秒超時
WDTO_30MS Watchdog定時器30 毫秒超時
WDTO_60MS Watchdog定時器60 毫秒超時
WDTO_120MS Watchdog定時器120 毫秒超時
WDTO_250MS Watchdog定時器250 毫秒超時
WDTO_500MS Watchdog定時器500 毫秒超時
WDTO_1S Watchdog定時器1 秒超時
WDTO_2S Watchdog定時器2 秒超時
Watchdog 測試程序:
在CA-M8 上執(zhí)行此程序時應(yīng)打開S1-8(LEDY),使黃色發(fā)光管連接PB0 引腳。

#include
#include
#include
#define uchar unsigned char
#define uint unsigned int
#define SET_LED PORTB&=0XFE //PB0 接黃色發(fā)光管

#define CLR_LED PORTB|=0X01
//誤差不會太大的延時1ms 函數(shù)
void DelayMs(uint ms)
{
uint i;
for(i=0;i
_delay_loop_2(4 *250);
}
int main(void)
{
DDRB=_BV(PB0);
PORTB=_BV(PB0); //CLR_LED
//WDT 計數(shù)器同期為一秒
wdt_enable(WDTO_1S);
wdt_reset();//喂狗
DelayMs(500);
SET_LED;
//等待餓死狗
DelayMs(5000);
SET_LED;
while(1)
wdt_reset();
}
執(zhí)行結(jié)果:
CA-M8 上的黃色發(fā)光管不斷的閃爍,證明了Watchdog 使MCU 不斷的復(fù)位。

三、注意事項

如果循環(huán)體內(nèi)每循環(huán)一次的時間不超過看門狗的復(fù)位時間,主要喂狗一次就可以,否則需要多次喂狗。


本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫毥谦F公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運行,同時企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風險,如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機 衛(wèi)星通信

要點: 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅持高質(zhì)量發(fā)展策略,塑強核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運營商 數(shù)字經(jīng)濟

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學會聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(shù)(集團)股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉