看门狗的作用是:当程序在某种意外情况下跑飞了,这时就没办法去”喂狗“,一旦持续某个门槛时间(比如20ms)还没有”喂狗“,那么看门狗就把单片机复位。
喂狗信号就是在上面说的20ms之内,去清WDT定时器。
应用于看门狗电路,现在很多5152系列都集成了看门狗电路,看门狗是为了防止程序执行到不可预料的情况,所以先给watch dog reg 赋予一定初值,在一定时间内它会自动减1,当减为0时系统将会自动复位,所以程序必须在一定时间重新设置watch dog reg 使其不会自动复位(即喂狗),表示程序运行正常。一般51 data sheet 里都有相关介绍。
看门狗是为了防止程序跑飞而设计使用的。看门狗需要单片机定期给一个信号,一般称为喂狗,单片机程序在正常运行时定期给看门狗一个信号,这是由软件设计的。这样在看门狗溢出之前就有一次喂狗,看门狗就不会溢出。
而当单片机受到干扰程序跑飞时就无法再执行正常的喂狗动作。这样看门狗就会溢出,给单片机复位电路一个信号,强制单片机复位,这样单片机就会又恢复到正常程序的执行中。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)