s3c2410的看门狗定时器有哪些工作方式
的有关信息介绍如下:工作原理:在系统运行以后也就启动了看门狗的计数器,看门狗就开始自动计数,如果到了一定的时间还不去清看门狗,那么看门狗计数器就会溢出从而引起看门狗中断,造成系统复位。所以在使用有看门狗的芯片时要注意清看门狗。
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;