完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
本帖最后由 盼盼2333 于 2016-12-16 16:50 编辑 在我们写的程序中,看门狗是个很重要的东西,今天我们便来学习看门狗的使用。 看门狗的作用: 在由单片机构成的微型计算机系统中,由于单片机的工作常常会受到来自外界电磁场的干扰,造成各种寄存器和内存的数据混乱,会导致程序指针错误,不在程序区,取出错误的程序指令等,都会陷入死循环,程序的正常运行被打断,由单片机控制的系统无法继续正常工作,会造成整个系统的陷入停滞状态,发生不可预料的后果。 看门狗就是定期的查看芯片内部的情况,一旦发生错误就向芯片发出重启信号的电路。看门狗命令在程序的中断中拥有最高的优先级。 其基本原理: 看门狗,又叫 watchdog timer,是一个定时器电路,一般有一个输入,叫喂狗(kicking the dog or service the dog),一个输出到MCU的RST端,MCU正常工作的时候,每隔一段时间输出一个信号到喂狗端,给 WDT 清零,如果超过规定的时间不喂狗,(一般在程序跑飞时),WDT 定时超过,就会给出一个复位信号到MCU,使MCU复位. 防止MCU死机. 看门狗的作用就是防止程序发生死循环,或者说程序跑飞。 工作原理:在系统运行以后也就启动了看门狗的计数器,看门狗就开始自动计数,如果到了一定的时间还不去清看门狗,那么看门狗计数器就会溢出从而引起看门狗中断,造成系统复位,所以在使用有看门狗的芯片时要注意清看门狗。 既然看门狗是一个定时器,那么定时器结束后会有一个触发信号,虽然看门狗可以设置中断模式和复位模式,但是看门狗的本质其实就是产生复位信号,所以这里我们设置为复位模式,并把喂狗周期设置为4s:
在配置好之后,我们需要使能:
在我们正常运行的一个周期里,我们需要喂狗一次(必须保证程序一个周期运行的时间小于看门狗复位时间,否则一个周期还未完成,看门狗计时器已经结束并复位了)
下面是一个正常的程序Demo: 我们的程序用来打印运行时间,如果每个周期都正常运行,就会正常喂狗。 |
|
相关推荐
|
|
只有小组成员才能发言,加入小组>>
1031 浏览 0 评论
【KV260视觉入门套件试用体验】四、KV260 视觉入门套件和固件更新
1605 浏览 0 评论
【KV260视觉入门套件试用体验】Vitis AI Library体验之OCR识别
1203 浏览 0 评论
【KV260视觉入门套件试用体验】Vitis AI 通过迁移学习训练自定义模型
1701 浏览 0 评论
【KV260视觉入门套件试用体验】KV260系列之Petalinux镜像+Resnet 50探索
1367 浏览 0 评论
【AMD KV260视觉入门开发套件试用】4、简单几步体验ubuntu 20.04.3 LTS运行人员检测应用
1655浏览 1评论
2217浏览 1评论
【KV260视觉入门套件试用体验】老刘记事儿KV260初体验之Micro-SD选型提速研究(三)
892浏览 1评论
【KV260视觉入门套件试用体验】KV260部署yolov3实现车辆和行人检测
2559浏览 1评论
【KV260视觉入门套件试用体验】基于KV260的人脸识别的实现与展示
894浏览 1评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-25 10:01 , Processed in 0.577159 second(s), Total 77, Slave 58 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号