STM32——看门狗(独立/窗口)

news2024/9/25 11:13:25

程序运行的保障措施,需要在程序中定期喂狗实现,如果某次没有喂,表示程序出现卡死或者其他状态,此时看门狗就会自动复位电路,防止程序长时间卡死。相当于自动复位电路。

独立看门狗:有单独的时钟LSI

窗口看门狗:有具体的喂狗时间上限和下限

1、独立看门狗

独立看门狗本质和定时器一样,定时器的计数溢出时产生中断/事件响应对应于看门狗产生一个复位信号,当递减计数器为0时就会产生复位信号,因此为防止计数器为0需要进行不断“喂狗”增大计数器中的值,避免减小到0,因此当程序出现问题时,没有“喂狗”则会产生一个复位信号。

以下是键寄存器的概念,用于降低只改写一位而带来的误操作概率:

F_LSI=40kHz,T_LSI=0.025ms,PR的值是固定的以下值(PR=2时,是16分频,则PR预分频系数=16),RL的取值是0-4995

2、窗口看门狗

没有自重装载寄存器,因此直接写入数据到CNT即可,想写多少就多少

配置寄存器就是用来写喂狗时间的最早界限,当看门狗控制寄存器的剩余值比配置寄存器的值大时,表示喂狗时间过早也会产生复位。

PCLK1默认36MHz——预分频器——自减CNT(T5-T0是有效计数位,T6是溢出标志位=0时计数器溢出,反之=1没溢出)

注意:把T6当作计数器一部分时,当CNT减到0X40/1000000后变为0111111时表示计数器溢出;

不把T6当作计数器时,只把低6位当成计数器时,低6位减到000000后,T6位从1到0,表示计数器溢出。

喂狗时间太晚,计数器减到0,也会复位。

如下所示,更好理解:

随着CNT的不断减小,当T>W时表示喂狗过早产生复位,当T<0x40时表示喂狗过晚,产生复位,当处于0x40时会产生一个早期唤醒中断,用于提醒此时需要做点什么,不然就复位

之后是超时时间的计算(喂狗最晚时间),窗口时间(喂狗最早时间)

F_PCLK1=36MHz

WDGTB预分频系数:WDGTB=0,2^0=1分频;WDGTB=2,2^2=4分频

不包含T6、W6位

以WDGTB=0为例:超时时间(最小值):1/36000000*4096*1*(0+1)=113us(T:000000)

超时时间(最大值):1/36000000*4096*1*(63+1)=7280us(T:111111)

3、对比独立看门狗和窗口看门狗

代码部分:

1、独立看门狗

不需要开启LSI时钟,自动开启

(1)首先是复位函数,进行判断复位信号的来源,切记当复位信号是看门狗复位时,一定要加清楚标志位符号,如果不清除,下次如果是复位键复位可能导致误判为看门狗复位

长按复位键时,并不会显示RST,整个界面停滞

(2)解除写保护——配置预分频值、重装值——计数值、启动看门狗

(3)主程序,长按按键时,模拟主程序卡死,此时IWWDG显示复位。

实验结果:

IWDG

2、窗口看门狗

(1)复位函数,与IWDG一样

(2)开启时钟——预分频值、窗口值——计时器使能位

设置超时时间:50ms,窗口时间:30ms,根据上述理论知识,得只当WDGTB=3时,才可以得到50ms,因此预分频器=8

T取整得到54,W取整得21;

0X40表示T6=1,其余位为0的数

(3)主程序

喂狗的代码放到延时之后,防止喂狗太快直接复位

实验结果:

(1)时间为40ms时:

WWDG

(2)时间为51ms时

51WWDG

结果:只有在while中的时间处于30-50ms之间时,窗口看门狗的FEED才会正常,否则会因为过快或过慢喂狗,一直由WWDG进行复位

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2089828.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

谷歌发布新AI GameNGen:AI也能实时生成游戏画面!

有关 GameNGen 的帖子 又有一则消息直接让全网为之狂欢&#xff01;Google 推出了一个实时AI生成的游戏引擎 GameNGen。目前 GameNGen 生成3D游戏的祖宗《BOOM》的视频已经火遍 X 平台&#xff0c;在视频中&#xff0c;游戏画面每一个画面都是由AI实时生成&#xff0c;可以说是…

应用层协议(下)Https加密Http的秘密(含逻辑图解 简单易学 通俗易懂!)

绪论​ “如今我努力奔跑&#xff0c;不过是为了追上那个曾经被寄予厚望的自己 —— 约翰丶利文斯顿”&#xff0c;本章承接上章Http&#xff0c;没看过强烈建议看后再看本章&#xff0c;本章主要就是学习Https是干什么的并且去底层的学习Http的原理&#xff0c;将会讲到Https的…

pdf转dwg怎么转换?5个软件教你轻松转换文件

pdf转dwg怎么转换&#xff1f;5个软件教你轻松转换文件 将PDF文件转换为DWG格式可以帮助你将静态的图像和矢量图形转换为可编辑的CAD图纸。这在建筑、工程和设计领域尤为重要&#xff0c;因为它可以让你在CAD软件中进一步编辑和利用这些图纸数据。以下是五款能够帮助你轻松将P…

查看显卡cuda版本

1.命令行窗口 打开cmd&#xff0c;输入下列语句 nvidia-smi 如下图红框所示&#xff1a; 2.查看cuda版本&#xff0c;打开英伟达控制面板&#xff0c;桌面右键或者系统右下角&#xff0c;然后点击系统信息&#xff0c;之后点击组件

锻炼思考力的有效实践

1. 意识觉醒 意识觉醒是提升思考力最重要的一个点&#xff0c;我认为。只要形成了这种意识&#xff0c;就已经成功了一半。 很多同学思维能力没有上去&#xff0c;是没有意识到思考力这个概念&#xff0c;只是机械地做事情&#xff0c;做事情&#xff0c;做事情……每次都在同…

C++ Vector容器操作

vector赋值操作 提供三种方式进行赋值 assign函数是STL中提供的一个成员函数&#xff0c;assign() 函数可以重新定义向量的内容&#xff0c;可以用于设置特定数量的重复元素&#xff0c;或者直接用另一个容器的元素来替换当前向量的元素。 //直接赋值&#xff0c;类似于拷贝 …

软考高级证书拿到手了,怎么评职称?

软考&#xff0c;是以考代评&#xff0c;以一个考试来代替提交若干材料的评职称的过程。 但是评聘是分开的。就是指评审或考试后取得软考证书之后&#xff0c;也需要你们单位聘任你&#xff0c;才可以享受相应职称工资待遇&#xff0c;担任相应专业技术职位。 也就是说&#…

【FPGA】入门学习路线

文章目录 编程语言语法RTL设计RTL验证学习方法仿真工具 基础知识&#xff08;1&#xff09;专业基础课&#xff08;2&#xff09;FPGA相关专业知识&#xff08;3&#xff09;FPGA开发流程 开发工具动手实验 编程语言 硬件描述语言HDL&#xff08;Hardware Description Languag…

项目型企业管理系统有哪些?这10款值得研究

国内外主流的 10 款企业项目管理系统对比&#xff1a;PingCode、Worktile、泛微 e-office、金蝶云星瀚、用友项目管理软件、Jira、Monday.com、Asana、Trello、Basecamp。 在面对复杂的项目管理需求时&#xff0c;许多企业经常感到手头的工具不足以支撑高效的运作。有效的项目型…

代码随想录刷题day17丨654.最大二叉树,617.合并二叉树,700.二叉搜索树中的搜索,98.验证二叉搜索树

代码随想录刷题day17丨654.最大二叉树&#xff0c;617.合并二叉树&#xff0c;700.二叉搜索树中的搜索&#xff0c;98.验证二叉搜索树 1.题目 1.1最大二叉树 题目链接&#xff1a;654. 最大二叉树 - 力扣&#xff08;LeetCode&#xff09; 视频讲解&#xff1a;又是构造二叉…

【GeoscenePro】Pro连接本机Portal

打开自己的portal下面框住的就是链接的地址 证书的话点击是即可

嵌入式数据库

概述 1.作用&#xff1a;存储大量数据&#xff0c;专业存储数据 存储在内存&#xff08;数组&#xff0c;变量&#xff0c;链表&#xff09;上的特点&#xff1a;程序运行结束&#xff0c;或者掉电&#xff0c;数据会丢失。 存储在硬盘&#xff08;文件&#xff09;上的特点…

恺英网络:有业绩,无“游戏”

2024年上半年&#xff0c;恺英网络的业绩依然很好&#xff0c;但有些不讲逻辑了。 8月22日晚&#xff0c;恺英网络发布了2024年半年度财报。 报告显示&#xff0c;上半年公司实现营业收入25.55亿元&#xff0c;同比增长29.28%&#xff1b;归母净利润和扣非净利润分别为8.09亿…

鸿蒙开发5.0【基于Search组件实现搜索栏】

场景一&#xff1a;自定义搜索图标 方案 基于Search组件的searchIcon属性设置搜索图标&#xff0c;searchIcon可以设置size、color。注意&#xff1a;当前搜索图标不支持隐藏且不支持位置调整。基于searchButton属性设置搜索框末尾搜索按钮。基于该属性可更改文本内容及文本样…

Pepper佩盼尔wordpress模板

Pepper佩盼尔WordPress模板是一款专为追求简洁、现代和专业外观的网站设计者和开发者打造的高品质主题。它以简站为主题&#xff0c;强调“让建网站更简单”的理念&#xff0c;旨在为用户提供一个易于使用、功能丰富的平台来构建他们的在线业务或个人网站。 模板特点包括&…

【JavaEE】网络原理 UDP协议

&#x1f525;个人主页&#xff1a; 中草药 &#x1f525;专栏&#xff1a;【Java】登神长阶 史诗般的Java成神之路 &#x1f383;一.运输层 运输层&#xff08;Transport Layer&#xff09;是OSI七层模型中的第四层&#xff0c;也是TCP/IP四层模型中的第三层。它的主要职责是…

在3D Slicer中使用 Monai Bundle 和 Model Zoo 标注医学影像数据-全身CT器官分割

在3D Slicer中使用 Monai Bundle 和 Model Zoo 标注医学影像数据-全身CT器官分割 文章持续更新&#xff0c;可以关注微公【医学图像人工智能实战营】获取最新动态。人手有限&#xff0c;文中涉及的链接前往微公对应文章查看。关注Tina姐&#xff0c;一起学习进步~ 导读 本系列…

云计算基础之Docker

云计算是什么 云计算的本质是计算资源的虚拟化。 与磁盘逻辑卷的分配类似&#xff0c;云计算是在负载波动时动态调整服务器计算资源&#xff0c;避免资源浪费的做法&#xff0c;生产环境中&#xff0c;厂商一般将服务器组成一个池&#xff0c;实现逻辑管理计算资源&#xff0…

实时图像编辑大革新!Adobe发布TurboEdit:可以通过文本来编辑图像,编辑时间<0.5秒!

今天给大家介绍Adobe研究院新的研究TurboEdit&#xff0c;可以通过文本来编辑图像&#xff0c;通过一句话就能改变图像中的头发颜色、衣服、帽子、围巾等等。而且编辑飞快&#xff0c;<0.5秒。简直是图像编辑的利器。 相关链接 项目&#xff1a;betterze.github.io/TurboE…

闪存刷新机制文献的解读

闪存刷新机制文献的解读 一、文献信息1、标题&#xff1a;Flash Correct-and-Refresh: Retention-Aware Error Management for Increased Flash Memory Lifetime2、作者来源&#xff1a;卡耐基梅隆大学 二、Motivation三、Technique ( Flash Correct-and-Refresh, FCR )1、Repr…