在正常操作期间,一次WDT 超时溢出将产生一次器件复位。如果器件处于休眠状态,一次WDT超时溢出将唤醒器件,使其继续正常操作(即称作WDT 唤醒)。对WDTE 设置位清零可以永久性地关闭WDT。
后分频器分配完全是由软件控制,即它可在程序执行期间随时更改。
为避免发生不可预测的器件复位,当从Timer0 预分频器的分配改为WDT 后分频器的分配时,必须执行下列指令序列。即使WDT 被禁止,也要执行这个指令序列。
如图所示是看门狗定时器的功能框图。
S3C44B0X看门狗定时利用MCLK作为时钟源,经过8位的预分频和4选1的2位分割之后得到所需频率。预分频值和频率分割值在看门狗定时器控制寄存器WTCON中配置,有效的预分频值范围为0~28-1,频率分割系数可选为16、32、64或128。使用下列公式计算看门狗定时频率和每个定时器时钟周期值。
twatchdog=1/MCLK/(预分频值+1)/分频系数
看门狗定时器使能后,WTDAT(看门狗定时器数据寄存器)不能自动装入WTCNT(看门狗定时计数寄存器)。因此,在看门狗定时器开始工作前,初值必须写到看门狗定时计数寄存器WTCNT中。