当前位置: 首页 > wzjs >正文

网站建设维护公司谷歌关键词优化怎么做

网站建设维护公司,谷歌关键词优化怎么做,做网站要多少钱联系方式,泉州网络推广专员主题内容教学目的/扩展视频看门狗什么是看门狗,原理分析,启动喂狗方法,读标志位。熟悉在程序里用看门狗。 师从洋桃电子,杜洋老师 📑文章目录 一、看门狗应用架构分析1.1 系统监控流程图1.2 双看门狗应用场景对比 二、…
主题内容教学目的/扩展视频
看门狗什么是看门狗,原理分析,启动喂狗方法,读标志位。熟悉在程序里用看门狗。

师从洋桃电子,杜洋老师


📑文章目录

    • 一、看门狗应用架构分析
      • 1.1 系统监控流程图
      • 1.2 双看门狗应用场景对比
    • 二、独立看门狗实战解析
      • 2.1 测试程序核心代码
      • 2.2 代码执行流程图
      • 2.3 关键参数计算
    • 三、窗口看门狗进阶应用
      • 3.1 测试程序核心逻辑
      • 3.2 程序运行原理图
      • 3.3 时间窗口参数解析
    • 四、关键代码剖析
      • 4.1 独立看门狗初始化
      • 4.2 窗口看门狗中断处理
    • 五、扩展应用设计
      • 5.1 复合监控系统架构
      • 5.2 调试技巧
    • 六、常见问题解答
    • 七、性能优化建议
    • 八、相关资源


▲ 回顾上期🔍STM32看门狗原理与应用详解:独立看门狗 vs 窗口看门狗(上) | 零基础入门STM32第九十四步


一、看门狗应用架构分析

1.1 系统监控流程图

任务阻塞/异常
系统启动
看门狗初始化
主循环运行
执行核心任务
定时喂狗
未及时喂狗
看门狗超时
系统复位

1.2 双看门狗应用场景对比

特性独立看门狗(IWDG)窗口看门狗(WWDG)
触发条件任意时间未喂狗窗口期外喂狗/超时未喂狗
响应速度约1秒(可配置)毫秒级响应
中断支持提供早期预警中断
典型应用基础系统监控实时任务时序控制

二、独立看门狗实战解析

2.1 测试程序核心代码

// main.c关键逻辑
IWDG_Init(); // 初始化看门狗(预分频64,重载值625)
while(1) {IWDG_Feed(); // 喂狗操作if(按键按下) delay_s(2); // 人为制造喂狗失败
}

2.2 代码执行流程图

MCU IWDG 初始化(设置预分频/重载值) 定期喂狗 执行正常任务 延时2秒(跳过喂狗) alt [按键按下] loop [主循环] 超时复位 MCU IWDG

2.3 关键参数计算

超时时间 = \frac{预分频值 \times 重载值}{40} \ (ms)

示例配置:

  • 预分频值:64(实际分频系数=4×64=256)
  • 重载值:625
  • 理论超时时间:≈1秒

三、窗口看门狗进阶应用

3.1 测试程序核心逻辑

// main.c关键代码
WWDG_Init(); // 初始化窗口看门狗
while(1) {delay_ms(54); // 精确窗口时间控制WWDG_Feed();  // 窗口期内喂狗
}

3.2 程序运行原理图

0x40
0x3F
窗口期内
主时钟
预分频器
7位递减计数器
触发中断
系统复位
喂狗操作

3.3 时间窗口参数解析

时间窗口 = \frac{4096 \times 预分频值 \times (CNT-WR)}{PCLK1} \ (μs)

示例配置:

  • 计数器初值(CNT):0x7F(127)
  • 窗口值(WR):0x50(80)
  • 预分频值:8
  • PCLK1时钟:36MHz
  • 实际窗口时间:48ms~64ms

四、关键代码剖析

4.1 独立看门狗初始化

void IWDG_Init(void) {IWDG_WriteAccessCmd(IWDG_WriteAccess_Enable);IWDG_SetPrescaler(pre);    // 设置预分频IWDG_SetReload(rlr);       // 设置重载值IWDG_ReloadCounter();      // 重载计数器IWDG_Enable();             // 启动看门狗
}

4.2 窗口看门狗中断处理

void WWDG_IRQHandler(void) {WWDG_ClearFlag();          // 清除中断标志// 紧急处理代码// 保存系统状态/发送警报WWDG_SetCounter(WWDG_CNT); // 重置计数器
}

五、扩展应用设计

5.1 复合监控系统架构

主任务
IWDG喂狗
实时任务
WWDG喂狗
中断预警
异常处理
基础监控

5.2 调试技巧

  1. IWDG冻结功能:在调试模式设置DBGMCU_CR寄存器
  2. WWDG时间测量:使用定时器捕获喂狗脉冲
  3. 安全喂狗策略:
    • 多任务协同喂狗
    • 喂狗前进行系统自检
  4. 状态保存机制:在复位前将关键数据存入备份寄存器

六、常见问题解答

Q1:喂狗操作导致程序卡顿?

  • 优化喂狗位置:放在主循环空闲时段
  • 使用DMA或硬件自动喂狗

Q2:窗口时间计算不准确?

  • 校准主时钟源
  • 使用公式:实际时间 = (4096×预分频×(CNT-WR))/PCLK1

Q3:同时使用双看门狗要注意什么?

  • 设置不同的超时周期
  • IWDG周期 > WWDG周期
  • 错开喂狗时间点

七、性能优化建议

优化方向实施方法预期效果
时钟精度使用外部晶振提高时间计算精度
喂狗策略多任务协同喂狗避免单点故障
异常处理在WWDG中断中保存系统状态提升故障诊断能力
功耗控制在低功耗模式下调整预分频平衡监控与功耗需求

附:看门狗配置速查表

寄存器IWDGWWDG
控制寄存器IWDG_KRWWDG_CR
预分频寄存器IWDG_PRWWDG_CFR
重载寄存器IWDG_RLRWWDG_CFR
状态寄存器-WWDG_SR

八、相关资源

[1] 洋桃电子B站课程-STM32入门100步
[2] STM32官方文档手册
[3] STM32F103固件函数库用户手册(中文)
[4] 看门狗原理.pptx
[5] 独立看门狗测试程序
[6] 窗口看门狗测试程序


💬 技术讨论(请在评论区留言~)

📌 下期预告:下一期将探讨TIM定时器重点课程,欢迎持续关注!

点击查阅🔍往期【STM32专栏】文章

版权声明:本文采用[CC BY-NC-SA 4.0]协议,转载请注明来源
实测开发版:洋桃1号开发版(基于STM32F103C8T6)
更新日志

  • v1.0 初始版本(2025-04-07)
http://www.dtcms.com/wzjs/511771.html

相关文章:

  • 织梦大气金融类通用企业网站模板跨境电商营销推广
  • 我的世界电影怎么做的视频网站百度收录刷排名
  • 苏州高端网站建设定制百度指数官网查询
  • 做墙绘一般在哪个网站最新网络营销方式
  • 沈阳网页设计收费标准seo网站优化系统
  • 临沂网站设计价格seo博客模板
  • 做网站app是什么h行业百度营销平台
  • 哪个网站注册域名seo搜索优化培训
  • 全国知名网站排名进入百度网首页
  • 博客网络营销方式seo排名点击软件推荐
  • 无忧网站源码seo人工智能
  • 做app网站有哪些功能app开发教程
  • 做私人彩票网站网络营销软文范文
  • 杭州有做网站免费手机网站建站系统
  • 动态网站难不难做网络营销的职能有哪些
  • 常州建设银行网站首页最新注册域名查询
  • 网站平台建设思路百度精准获客平台
  • 2018建设一个网站需要什么长尾关键词挖掘工具爱网站
  • 网站建设 发展方向广东seo网站推广
  • 网站 页面风格 建设天津seo招聘
  • 公司请外包做的网站怎么维护crm软件
  • 签到做任务赚钱的网站怎样做自己的网站
  • 用dede.com网站上传文件购买seo关键词排名优化官网
  • 邯郸做网站公司百度精简版网页入口
  • 怎么给网站做第三方app网络推广企业
  • wordpress 资讯类模板东莞seo报价
  • 德州口碑好的网站制作公司清理大师
  • 做旅游的网站品牌营销包括哪些方面
  • 北京做商铺的网站大型网站制作
  • 洛阳做网站公司电话品牌词优化