看門狗的作用我想大家都應(yīng)該清楚,S3C2440看門狗定時器它不僅可以當(dāng)作看門狗來使用,還可以當(dāng)作普通的定時器來使用。S3C2440看門狗電路模塊框圖:
看門狗電路采用PCLK作為時鐘源,PCLK通過兩個分頻器之后才是看門狗定時器的工作時鐘。那看門狗定時器的時鐘到底是多少呢,有如下計算公式:
t_watchdog= 1/[ PCLK / (Prescaler value + 1) / Division_factor ]
prescaler value和division factor的取值是通過看門狗的控制寄存器WTCN來設(shè)置的,prescaler value取值范圍為0~255,division factor取值有16、32、64和128。
S3C2440看門狗定時器如果是作為普通定時器來使用的話,WTCNT降為0時它可以產(chǎn)生定時器中斷。如果是作為看門狗來使用的話,WTCNT降為0時它會產(chǎn)生128個PCLK周期的復(fù)位信號。
模塊框圖看完了,再來看寄存器定義:
WTDAT寄存器用于看門狗定時器作為普通定時器使用時,當(dāng)WTCNT降為0時自動加載WTDAT值到WTCNT中。但是,剛開始這個值是不會自動加載到WTCNT中的,所以,還需要我們手動將初始值寫入WTCNT寄存器中。





