您现在的位置: 主页 > 嵌入式开发入门到精通 > 单片机技术进阶 > 第七节:PIC系列单片机看门狗WDT -
本文所属标签:
为本文创立个标签吧:

第七节:PIC系列单片机看门狗WDT -

来源: 网络用户发布,如有版权联系网管删除 2018-09-07 

[导读]
看门狗计时器(Watch Dog Timer)是一个片内自振式的RC振荡计时器,无需任何的外接元件。这意味着即使芯片OSC1/OSC2上振荡停止了(例如执行指令SLEEP后),WDT照样保持计时。WDT计时溢出将产生RESET。在

看门狗计时器(Watch Dog Timer)是一个片内自振式的RC振荡计时器,无需任何的外接元件。这意味着即使芯片OSC1/OSC2上振荡停止了(例如执行指令SLEEP后),WDT照样保持计时。WDT计时溢出将产生RESET。在PIC16C5X芯片内有一个特殊的谓之"定义EPROM"(Configuration EPROM)的单元,其中的一个位是用于定义WDT的。你可以将其置"0"来抑制WDT使之永远不起作用。这将在第七章的烧写器介绍部分详细说明,请参阅。

本文引用地址: http://www.21ic.com/app/mcu/201808/765598.htm

1、WDT周期

WDT有一个基本的溢出周期18ms(无预分频器),如果你需要更长的WDT周期,可以把预分频器分配给WDT,最大分频比可达1:128,这时的WDT溢出周期约为2.5S。WDT溢出周期和环境温度、VDD等参数有关系,请参阅附录的图表。
"CLRWDT"和"SLEEP"指令将清除WDT计时器以及预分频器里已有的计数值(当预分频器分配给WDT时)。WDT一般用来防止系统失控或者说防止单片机程序运行"失控"。在正常情况下,WDT应在计满溢出前被CLRWDT指令清零,以防止产生RESET。如果程序由于某种干扰而失控,那么不能在WDT溢出前执行一条CLRWDT指令,就会使WDT溢出而产生RESET,使系统重新启动运行而不至失去控制。若WDT溢出产生RESET,则状态寄存器F3的"TO"位会被清零,用户程序可藉此判断复位是否由WDT溢时所造成。

2、WDT编程注意事项

如果使用WDT,一定要仔细在程序中的某些地方放一条"CLRWDT"指令,以保证在WDT在溢出前能被请零。否则会造成芯片不停地产生RESET,使系统无法正常工作。




              查看评论 回复



嵌入式交流网主页 > 嵌入式开发入门到精通 > 单片机技术进阶 > 第七节:PIC系列单片机看门狗WDT -
 

"第七节:PIC系列单片机看门狗WDT -"的相关文章

网站地图

围观()