WTD实验(lv9-day15)
1 WDT简介
由上图可知当cpu程序正常工作时,会定时去刷新WDT的计数器,也就是说WDT的计数器在程序正常运行时永远不会为0. 当程序异常不能定时刷新WDT的计数器(喂狗),那么WDT就会给cpu发送一个复位信号系统复位。
2exynos4412下的WDT控制器
这是计算看门狗周期
t_watchdog = 1/(PCLK/(Prescaler value + 1)/Division_factor)
3 WDT寄存器详解
这是控制WDT的所有寄存器,在这个实验我们只关注WTCON和WTCNT(其它两个是用于与中断功能相关的)这两个寄存器。
3.1 WTCON
由上图可知这个寄存器只使用了16位,第零位用于设置是否产生复位信号,第2位用于是否使能中断。
第[3:4]用于设置二级分频,第5位是否使能WDT计数器 [15:8]设置一级分频。
3.2 WTCNT
该寄存器用于设置WDT计数器的计数值(注意:范围为0~65535).
3 WDT实验
typedef struct {
unsigned int WTCON