S3C2410的看門狗
中斷方式的16位定時器。
普通看門狗功能。
減計數溢出。
采用PCLK作為時鐘
寄存器:
***有3個寄存器WTCON,WTDAT,WTCNT
使用看門狗之前應初始化WTDAT,WTCNT.
看門壹般使用流程如下:
1) 設置看門狗中斷操作包括全局中斷和看門狗中斷的使能,和看門狗中斷向量的定義,如果
只是進行復位操作,不需要復位操作,這壹步可以不用設置。
2) 對看門狗控制寄存器(WTCON)的設置,包括設置預分頻比例因子、分頻器的分頻值、中
斷使能和復位使能等。
3) 對看門狗數據寄存器(WTDAT)和看門狗計數寄存器(WTCNT)的設置。
4) 啟動看門狗定時器。
註意:
1、在使用看門狗之前應該先初使化WTDAT,WTCNT,使能看門狗後WTDAT中的值將會自動裝載到WTCNT中, 減計數.減至0時溢出.
2、在用JLINK仿真時,看門狗的復位功能將無效,若在JLINK中使用,將會出錯.解決方法是燒寫到Flash中,看實際運行效果.
3、看門狗計數周期的計數方法
t_watchdog = 1/( PCLK / (Prescaler value + 1) / Division_factor )
Prescaler value為預分頻, Division_factor為分頻.(WTCON中設置)
例:若預設Prescaler value="PCLK/1000000-1", Division_factor為128.
則t_watchdog=1/((PCLK/(PCLK/1000000-1+1)/128)
t_watchdog=1/(1M/128)=128us
若現在設定時時間為1S,則WTDAT初值應設為1S/128us=1M/128=7812
所以初值WTDAT=7812;WTCNT=7812;