什么是看门狗_看门狗的特性_看门狗定时器程序举例

生活常识 2023-04-17 08:44生活常识www.jianfeiren.cn

  什么是看门狗_看门狗的特性_看门狗定时器程序举例

  看门狗简称WDT,实际上是一个定时器,就如同我们所讲的Timer_A3亦或是Timer_B7系统一样,他们可以实现定时器的基本功能。,看门狗不具备Timer_A3或者Timer_B7那么多的计数模式以及输出功能,看门狗具有它自己的看家本领---看门---就是在某些时候迫使系统复位,主要是在程序死锁、系统异常等情况下完成强制复位。

  2,看门狗应的特性

  1、电路里面包含有定时器和时钟源,当定时器计数到一定程度(一般是溢出)后将产生一个特定的信号;

  2、在定时器计数的过程中,可以通过某些信号将定时器清零;

  3、也可以禁用这个定时器以禁止看门狗功能;

  4、,从看门狗的功能和应用领域讲,看门狗内部电路不应过于复杂,看门狗电路必须具有比处理器更高的稳定性和可靠性。

  3,处理器如何控制看门狗

  看门狗内部有定时器,如果MCU不能在一段时间内把看门狗定时器清零它就会发出一个信号。“狠狠地”通知MCU---看门狗很生气,后果很严重---MCU将被RESET。,一旦你的系统中添加了看门狗电路,你就一定要格外小心,“不要忽略你身边的任何一条狗”。

  ,一旦电路中添加了看门狗的功能,我们就必须在程序中添加将看门狗定时器清零的代码,这种操作我们称之为喂狗。对于喂狗操作,我们应当注意以下几点

  1、MCU中任何两次喂狗操作之间的时间间隔应小于看门狗的定时周期,如果某一任务的执行周期超过了看门狗的定时周期,需要向其中加入喂狗操作;

  2、对于无操作系统的系统来说,喂狗操作只能在主循环中或被主循环调用的程序中执行,不可以在定时器中断服务程序中进行;

  3、,用户还可以根据自己系统的情况来选择适当的看门狗定时器时间。

  4,MSP430F14x的内部看门狗定时器

  前面介绍的都是看门狗的一些共性,对于MSP430F14x系列微处理器来说,其内部的看门狗相对来说具有更强大的功能和灵活性

  1、四种可供选择的定时周期;

  2、可选择的定时器模式或看门狗模式,可关闭看门狗;

  3、访问密码保护;

  4、可选择的时钟源;

  5、可选择RST或NMI。

  5,MSP430F14x的内部看门狗

  MSP430F14x的内部看门狗结构如图所示。

  看门狗部分电路相对于前面的各个功能模块而言是比较简单的,内部具有一个最大16位的定时器,其时钟源可以选择位SMCLK或者ACLK,用户可以控制对应的寄存器以控制看门狗功能。

  6,看门狗定时器之寄存器

  6.1 MSP430F14x内部看门狗寄存器

  用户可以通过控制看门狗定时器对应的寄存器来控制其功能时钟源选择、定时周期等。看门狗定时器的寄存器主要有以下三个WDTCTL,主要控制看门狗的工作模式、时钟源、看门狗定时器的时间间隔选择等;IE1系统中断寄存器1,控制看门狗电路中断信息;IFG1系统中断标志位,保存了系统的中断信息。

  6.2 WDTCTL控制寄存器

  WDTPW看门狗密码设置,从该8位读取时,能读取到0x69。向该8位写入时必须写入0x5A,否则会引起PUC。

  WDTHOLD看门狗定时器挂起,即停止看门狗定时器的计数,从而禁用看门狗功能。1看门狗定时器挂起;0看门狗定时器工作

  我们现在看到的是WDTCTL控制寄存器,下面是寄存器内各位的作用。

  WDTNMIES看门狗定时器NMI边缘选择,该位于WDTNMI共同作用决定NMI需要特别注意的是在修改该位前必须将WDTNMI位复位。1上升沿产生NMI;0下降沿产生NMI。

  WDTNMINMI功能选择位,控制RST/NMI引脚功能。1NMI功能;0RESET功能。

  WDTTMSEL看门狗功能模式选择。1周期定时功能;0看门狗功能。

  WDTCNTCL看门狗定时器清零。1将看门狗定时器清零;0不清零。

  WDTSSEL看门狗定时器时钟选择。1SMCLK;0ACLK。

  WDTIS看门狗定时器周期选择,用于选择看门狗定时器的定时周期。11计数器第6位输出,即看门狗时钟的64分频;10计数器第10位输出,即看门狗时钟的512分频;01计数器第13位输出,即看门狗时钟的8192分频;00计数器第15位输出,即看门狗时钟的32768分频。

  6.3IE1系统中断控制寄存器

  NMIIE该位位于IE1的第4位,NMI中断使能控制位。1允许NMI中断;0禁止NMI中断。

  WDTIE看门狗定时器中断允许位,该位控制当看门狗电路工作在周期定时模式时WDTIFG的中断使能。1允许EDTIFG中断;0禁止WDTIFG中断。

  6.4IFG1系统中断标志寄存器

  NMIIFGNMI中断请求标志位,用户必须软件清除该中断请求。1当前有NMI中断请求;0当前没有NMI中断请求。

  WDTIFG看门狗定时器中断请求标志位。需要特别注意,在看门狗模式下该位必须由用户在软件中清除,而在周期定时模式下该位是可以被自动清除的。1当前有看门狗定时器中断请求;0当前没有看门狗定时器中断请求。

  还有WDTCNT计数器该寄存器保存了看门狗定时器内部的16位定时器的值。

  7看门狗定时器之程序举例

  7.1 IAR对看门狗定时器周期的定义

  IAR除了对MSP430内部的寄存器做出了宏定义之外,对看门狗部分的定时器后期也做出了宏定义,可以极大的方便看门狗的使用。例如定义当看门狗时钟为32768Hz时,定义了周期定时器模式如图所示。

  即看门狗周期分别为1000ms,250ms和16ms。

  7.2看门狗定时器周期端口翻转

  请输入描述

  这是设置看门狗定时器工作在后期定时模式下,ACLK为32768Hz时端口翻转周期为1000ms,并且工作在周期定时器模式下,触发看门狗中断,在中断服务程序中对端口P1.0输出翻转。

Copyright@2015-2025 Www.jianfeiren.cn减肥人网版板所有All right reserved