<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > S5PC100看門(mén)狗定時(shí)器源碼解讀

S5PC100看門(mén)狗定時(shí)器源碼解讀

作者: 時(shí)間:2016-11-19 來(lái)源:網(wǎng)絡(luò ) 收藏
看門(mén)狗(WatchDog)定時(shí)器和PWM定時(shí)功能目的不一樣。它的特點(diǎn)是,需要不停地接受信號(一些外置看門(mén)狗芯片)或重新設置計數值(如S5PC100的看門(mén)狗控制器),保持計數值不為0。一旦一段時(shí)間接收不到信號,或計數值到0,看門(mén)狗將發(fā)出復位信號復位系統或產(chǎn)生中斷。(擴展閱讀:脈沖寬度調制定時(shí)器)

看門(mén)狗的作用微控制器受到干擾進(jìn)入錯誤狀態(tài)后,使系統在一定時(shí)間間隔內復位。因此看門(mén)狗是保證系統長(cháng)期、可靠和穩定運行的有效措施。目前大部分的嵌入式芯片內都集成了看門(mén)狗定時(shí)器來(lái)提高系統運行的可靠性。

本文引用地址:http://dyxdggzs.com/article/201611/318180.htm

S5PC100處理器的看門(mén)狗是當系統被故障(如噪聲或者系統錯誤)干擾時(shí),用于微處理器的復位操作,也可以作為一個(gè)通用的16位定時(shí)器來(lái)請求中斷操作??撮T(mén)狗定時(shí)器產(chǎn)生128個(gè)PCLK周期的復位信號。主要特性如下:

● 通用的中斷方式的16位定時(shí)器。

● 當計數器減到0(發(fā)生溢出)時(shí),產(chǎn)生128個(gè)PLK周期的復位信號。

看門(mén)狗定時(shí)器的功能框圖如圖10-5所示。



圖1 S5PC100的看門(mén)狗的功能框圖

1. 看門(mén)狗軟件程序設計流程

因為看門(mén)狗是對系統的復位或者中斷的操作,所以不需要外圍的硬件電路。要實(shí)現看門(mén)狗的功能,只需要對看門(mén)狗的寄存器組進(jìn)行操作,即對看門(mén)狗的控制寄存器(WTCON)、看門(mén)狗數據寄存器(WTDAT)、看門(mén)狗計數寄存器(WTCNT)的操作。

其一般流程如下。

(1)設置看門(mén)狗中斷操作包括全局中斷和看門(mén)狗中斷的使能及看門(mén)狗中斷向量的定義,如果只是進(jìn)行復位操作,這一步可以不用設置。

(2)對看門(mén)狗控制寄存器(WTCON)的設置,包括設置預分頻比例因子、分頻器的分頻值、中斷使能和復位使能等。

(3)對看門(mén)狗數據寄存器(WTDAT)和看門(mén)狗計數寄存器(WTCNT)的設置。

(4)啟動(dòng)看門(mén)狗定時(shí)器。

2. 看門(mén)狗寄存器的定義

/*
*WATCHDOG 寄存器的定義
*/
typedef struct {
unsigned int WTCON ;
unsigned int WTDAT ;
unsigned int WTCNT ;
unsigned int WTCLRINT ;
}wdt;
#define WDT (* (volatile wdt *)0xEA200000 )

3. 看門(mén)狗寄存器的初始化

void wdt_init( )
{
WDT.WTCNT = 0X277e;
//WDT.WTDAT = 0X277e;
WDT.WTCON = (1<<0)|(3<<3)|(1<<5)|(255<<8);
// 66MHZ 預分頻255 得到255824HZ 再進(jìn)行128分頻得到得到f = 2022HZ
// data * 1/f = 5 延時(shí)5秒 得到data = 0x277e
}

4. 看門(mén)狗主程序的編寫(xiě)

#include "s5pc100.h"
int main()
{
int i;
GPG3.GPG3CON = (~(0xf<<4)&GPG3.GPG3CON) | (0X1<<4);
GPG3.GPG3DAT = 0x2;
// 點(diǎn)亮LED用來(lái)測試看門(mén)狗的復位功能
wdt_init();
while(1);
return 0;
}

5. 觀(guān)察實(shí)驗結果

程序運行5秒后,LED就會(huì )熄滅,因為此時(shí)的CPU發(fā)生了復位。



評論


技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>