• 嵌入式学习笔记(40)看门狗定时器


    7.5.1什么是看门狗、有何用

    (1)看门狗定时器和普通定时器并无本质区别。定时器可以设定一个时间,在这个时间完成之前定时器不断计时,时间到的时候定时器会复位CPU(重启系统)。

    (2)系统正常工作的时候当然不希望被重启,但是系统受到干扰、极端环境等可能会产生异常工作或者不工作,这种状态可能会造成不良影响(至少是不工作),此时解决方案就是重启系统。

    (3)普通设备重启不是问题,但是有些设备人工重启存在困难。这时我们希望系统能够自己检验自己是否已经跑飞,并且在意识到自己跑飞的时候,可以很快的(几个ms或者更短)自我重启。这个功能就要靠看门狗定时器来实现。

    (4)典型应用情景是:我们在应用程序中打开看门狗设备,初始化好给它一个时间,然后应用程序使用一个线程来喂狗,这个线程的执行时间安全短于看门狗的复位时间。当系统(或者应用程序)异常后,喂狗线程自然就不工作了,然后到时候看门狗就会复位。

    (5)补充:实战中有时候为了绝对可靠,我们并不会使用SoC中自带的看门狗,而是使用专门的外置的看门狗芯片来实现看门狗。

    7.5.2 S5PV210看门狗定时器的结构框图

    (1)PCLK_PSYS经过两级分频后生成WDT(watchdog timer)的时钟周期,然后把要定的时间写到WTDAT寄存器中,刷到WTCNT寄存器中去减1,减到0时(定时时间到)产生复位信号或中断信号。

    (2)典型应用中是配置为产生复位信号,我们应该在WTCNT寄存器减到0之前给WTDAT寄存器中重新写值以喂狗。

    7.5.3看门狗定时器的主要寄存器

    WTCON WTDAT WTCNT WTCLRINT

     嵌入式物联网的学习之路非常漫长,不少人因为学习路线不对或者学习内容不够专业而错失高薪offer。不过别担心,我为大家整理了一份150多G的学习资源,基本上涵盖了嵌入式物联网学习的所有内容。在评论区输入“嵌入式”,即可0元领取学习资源,让你的学习之路更加顺畅!记得点赞、关注、收藏、转发哦!

  • 相关阅读:
    软件测试生命周期包括哪些阶段?CMA、CNAS软件测试报告有什么作用?
    QT拖放事件之七:子类化QMimeData,实现对多个自定义类型进行数据
    Lua速成(1)
    算法金 | 再见!!!KNN
    手机注册卡知多少
    计算机毕设(附源码)JAVA-SSM基于JAVA语言的宠物寄养管理
    XSS攻击(1), 测试XSS漏洞, 获取cookie
    oak深度相机入门教程-行人识别
    nginx 笔记
    #QT(事件--快捷键保存文件)
  • 原文地址:https://blog.csdn.net/m0_70888041/article/details/133457023