STM32 的 独立看门狗(IWDG) 中(结合上文【STM32】独立看门狗(提供完整实例代码)),为了控制看门狗的超时时间(溢出时间),我们主要设置两个参数:

名称控制寄存器控制函数作用
预分频因子 PrescalerIWDG_PRIWDG_SetPrescaler() 决定看门狗时钟变慢多少倍
重装载值 Reload ValueIWDG_RLRIWDG_SetReload()看门狗倒计时起始值,越大超时越久

IWDG 超时时间计算公式

Tout = ((4×2^prer) ×rlr) /40 (M3)

其中:

PR:预分频因子寄存器的值(0~7)
RL:重装载寄存器中的值(0~0x0FFF)
40:LSI 时钟频率为 40kHz

预分频因子(Prescaler)

📘 设置位置:
寄存器:IWDG_PR 的位 [2:0]
函数:IWDG_SetPrescaler(IWDG_Prescaler_xxx);

PR值分频因子实际频率(Hz)
0/410,000 Hz
1/85,000 Hz
2/162,500 Hz
3/321,250 Hz
4/64625 Hz
5/128312.5 Hz
6/7/256156.25 Hz

在这里插入图片描述

分频因子越大 → 看门狗时钟越慢 → 超时时间越长

重装载值(Reload)

📘 设置位置:
寄存器:IWDG_RLR 的位 [11:0]
函数:IWDG_SetReload(uint16_t value);

RL值含义
0x0000最小计数(最短时间)
0x0FFF最大计数(最长时间)

实质上是“看门狗计数器初始值”,倒计时到 0 就触发复位。

举个完整例子

设置:

  • 预分频因子 = /256(PR = 6
  • 重装载值 = 4095(0x0FFF
Tout = ((4 × 2^6) × 4095) / 40= (256 × 4095 × 4) / 40= 419430 / 40= 10485.75 ms ≈ 10.5 秒即,如果程序 10.5 秒内不喂狗,系统将自动复位。
调节思路:
想要超时长一点	增大 PR 或 RL
想要超时短一点	减小 PR 或 RL
注意事项
  1. 写保护机制
    • 修改 PRRL 之前必须执行:
IWDG_WriteAccessCmd(IWDG_WriteAccess_Enable);
  1. 最大 RL = 0x0FFF(4095)
  2. 修改时需等待状态寄存器清除
while(IWDG_GetFlagStatus(IWDG_FLAG_PVU) != RESET);
while(IWDG_GetFlagStatus(IWDG_FLAG_RVU) != RESET);
简化时序
LSI 40kHz --[预分频PR]--> 低速时钟 --[倒计时从RL开始]-->0触发复位

预分频因子决定“计数器走得多慢”,重装载值决定“从多少开始倒计时”,两者共同决定看门狗的超时时间。

以上,欢迎有从事同行业的电子信息工程、互联网通信、嵌入式开发的朋友共同探讨与提问,我可以提供实战演示或模板库。希望内容能够对你产生帮助!

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

如若内容造成侵权/违法违规/事实不符,请联系英文站点网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

从0到1搭建同城O2O外卖平台:外卖系统源码架构解析与实战指南

当下,越来越多的创业者、品牌连锁商家,甚至社区集群,开始布局属于自己的本地外卖平台。而对于软件开发者和技术团队而言,如何从0到1搭建一套可落地、可扩展、可持续运营的外卖系统,成为了一个既现实又挑战性十足的话题…

MySQL 8.0 OCP 1Z0-908 题目解析(16)

题目61 Choose the best answer. Examine this command, which executes successfully: mysqlbackup --defaults-file/backups/server-my.cnf --backup-dir/backups/full copy-backWhich statement is true about the copy-back process? ○ A) It restores files from the da…

WSL命令

以下是 WSL&#xff08;Windows Subsystem for Linux&#xff09;的常用命令大全&#xff0c;涵盖安装、管理、网络、文件交互等场景&#xff0c;方便快速查阅和使用&#xff1a;1. 安装与版本管理命令说明wsl --install默认安装 WSL 和 Ubuntuwsl --install -d <发行版名&g…

AI语音训练——GPT-SoVITS(GSV)

链接说明 github项目地址&#xff1a;RVC-Boss/GPT-SoVITS: 1 min voice data can also be used to train a good TTS model! (few shot voice cloning) 项目中文说明书&#xff1a; GPT-SoVITS指南//项目说明书里也有在线使用的链接 原项目作者B站教学视频&#xff1a;耗时两个…

事件委托版本tab栏切换

事件委托&#xff1a;是JavaScript中注册事件的常用技巧&#xff0c;也称事件委派、事件代理简单理解&#xff1a;原本需要注册在子元素的事件委托给父元素&#xff0c;让父元素担当事件监听的职务优点&#xff1a;减少注册次数&#xff0c;可提高程序性能原理&#xff1a;事件…

FLAN-T5:规模化指令微调的语言模型

摘要 在将数据集表述为指令的形式上进行语言模型微调&#xff0c;已被证明能够提升模型性能及其对未见任务的泛化能力。本文探讨了指令微调&#xff0c;特别关注以下三个方面&#xff1a;(1) 任务数量的扩展&#xff0c;(2) 模型规模的扩展&#xff0c;以及 (3) 基于链式思维&…

设计模式文章

1. 工厂模式 | 菜鸟教程

Xilinx Vivado开发环境快速导出hdf文件(bat批处理)

Xilinx FPGA使用Vivado开发环境创建MicroBlaze软核或ZYNQ PS侧SDK逻辑工程时&#xff0c;需要FPGA侧搭建的硬件平台文件&#xff0c;即hdf文件&#xff0c;常规方式是编译完成生成bit流文件后&#xff0c;通过File->Export->Export Hardware菜单来导出&#xff0c;在弹出…

UniApp 中实现智能吸顶 Tab 标签导航效果

前言在移动端应用开发中&#xff0c;Tab 标签导航是一种常见的交互模式。本文将详细介绍如何在 UniApp 中实现一个功能完善的智能吸顶 Tab 导航组件&#xff0c;该组件具有以下特性&#xff1a;&#x1f3af; 智能显示&#xff1a;根据滚动位置动态显示/隐藏&#x1f4cc; 吸顶…

ElasticSearch快速入门-1

文章目录Elasticsearch简介ES概念ES和关系型数据库的对比正序索引和倒序索引安装es、kibana、IK分词器ES操作_cat操作Mapping映射属性索引库操作索引库CRUD文档CRUD文档批处理操作Java客户端操作ESElasticsearch简介 就是一个搜索引擎数据库 以下都简称ES ES概念 ES和关系型…

【论文撰写】如何把AI生成的文本公式复制在word中,完整的复制公式,拷贝豆包生成的公式

1、问题描述 AI生成的内容 在对于含有公式的生成内容&#xff0c;直接拷贝到Word 会呈现类Markdown的格式&#xff0c;除了格式上&#xff0c;公式也不是标准格式。 如下列两个图片对比 2、工具 这时&#xff0c;就需要用另一个工具进行转换 Home - Snip Web Mathpix Acc…

【机器学习笔记 Ⅱ】5 矩阵乘法

矩阵乘法是神经网络、图形学、科学计算等领域的核心运算&#xff0c;用于高效处理线性变换和批量数据计算。以下是其数学定义、计算规则及实际应用的系统解析。1. 数学定义2. 计算步骤&#xff08;示例&#xff09;3. 代码实现 (1) Python&#xff08;NumPy&#xff09; import…

【数字后端】- 衡量design的congestion情况

基础概念 通常在RP的placement之后&#xff0c;就要去去查看设计的Density和Congestion情况。 而congestion的衡量指标有以下两点&#xff1a; &#xff08;1&#xff09;Overflow Congestion 分析基于一个基本『单元』称为GCELL: Routing Grid cell. Gcell 是工具自己定义…

Oracle面试题-体系结构

&#x1f4cc;1.如何查看 Oracle 数据库的版本信息&#xff1f; 1. 标准 SQL 查询&#xff08;推荐&#xff09; 方法 1&#xff1a;查询 v$version 视图&#xff08;最常用&#xff09; SELECT * FROM v$version;输出示例&#xff1a; BANNER -------------------------------…

Flex布局原理

1.布局原理 flex 是 flexible Box 的缩写&#xff0c;意为"弹性布局"&#xff0c;用来为盒状模型提供最大的灵活性&#xff0c;任何一个容器都可以 指定为 flex 布局。 当我们为父盒子设为 flex 布局以后&#xff0c;子元素的 float、clear 和 vertical-align 属性将…

JavaScript 模块系统二十年:混乱、分裂与出路

JavaScript 模块系统&#xff1a;一场至今未醒的历史梦魇 一、引言&#xff1a;我们真的解决了“模块化”吗&#xff1f; 你可能以为&#xff0c;JavaScript 模块系统早已标准化&#xff0c;import/export 就是答案。 但现实却是另一番景象&#xff1a;构建报错、依赖冲突、加…

人工智能-基础篇-23-智能体Agent到底是什么?怎么理解?(智能体=看+想+做)

1、智能体是什么&#xff1f; 想象你有一个超级聪明的小助手&#xff0c;它能&#xff1a; 自己看环境&#xff08;比如看到天气、听到声音、读到数据&#xff09;&#xff1b;自己做决定&#xff08;比如下雨了要关窗&#xff0c;电量低要去充电&#xff09;&#xff1b;自己…

Java实现项目1——弹射球游戏

项目&#xff1a;弹射球游戏 项目描述&#xff1a; 类似于乒乓球的游戏&#xff0c;游戏可以播放背景音乐&#xff0c;可以更换背景图&#xff0c;当小球碰到下面的挡板后会反弹&#xff0c;当小球碰到方块后会增加分数&#xff0c;当小球掉落会导致游戏失败&#xff0c;按下…

(十八)深入了解 AVFoundation-编辑:添加背景音乐与音量控制(下)——实战篇

一、功能目标回顾在理论篇中&#xff0c;我们系统地介绍了如何使用 AVFoundation 添加背景音乐音轨&#xff0c;并通过 AVMutableAudioMix 与 AVMutableAudioMixInputParameters 实现多音轨混音与音量控制。我们了解了诸如淡入淡出、静音控制、动态音量曲线等核心技术细节。本篇…

如何在新机器上设置github完成内容git push

如果你在一台新的机器上git pull 仓库&#xff0c;完成修改&#xff0c;然后git push&#xff0c;会发现下面错误&#xff1a; Username for https://github.com: xiaomaolv Password for https://xiaomaolvgithub.com: remote: Support for password authentication was rem…