独立看门狗(IWDG)
2022/3/11 23:15:41
本文主要是介绍独立看门狗(IWDG),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
0x01 IWDG简介
STM32F10xxx内置两个看门狗,(独立看门狗和窗口看门狗)可用来检测和解决由软件错误引起的故障;当计数器达到给定的超时值时,触发一个中断(仅适用于窗口型看门狗)或产生系统复位。
独立看门狗(IWDG)由专用的低速时钟(LSI)驱动,即使主时钟发生故障它也仍然有效。IWDG最适合应用于那些需要看门狗作为一个在主程序之外,能够完全独立工作,并且对时间精度要求较低的场合。
0x02 IWDG主要性能
● 自由运行的递减计数器
● 时钟由独立的RC振荡器提供(可在停止和待机模式下工作)
● 看门狗被激活后,则在计数器计数至0x000时产生复位
0x03 IWDG寄存器配置
配置过程
独立看门狗工作频率:40khz / 64分频 = 625hz
递减计数器减1的周期:1 / 625hz
独立看门狗的复位时间:625 * (1 / 625hz) = 1s
- 键寄存器(IWDG_KR)
位31:16 | 保留,始终读为0。 |
---|---|
位15:0 w | 软件必须以一定的间隔写入0xAAAA(喂狗),否则,当计数器为0时,看门狗会产生复位。 |
位15:0 w | 写入0x5555表示允许访问IWDG_PR和IWDG_RLR寄存器。 |
位15:0 w | 写入0xCCCC,启动看门狗工作。 |
- 预分频寄存器(IWDG_PR)
位31:3 | 保留,始终读为0。 |
---|---|
位2:0 rw | 000: 预分频因子=4 100: 预分频因子=64 |
位2:0 rw | 001: 预分频因子=8 101: 预分频因子=128 |
位2:0 rw | 010: 预分频因子=16 110: 预分频因子=256 |
位2:0 rw | 011: 预分频因子=32 111: 预分频因子=256 |
- 重装载寄存器(IWDG_RLR)
位31:12 | 保留,始终读为0。 |
---|---|
位11:0 rw | 看门狗计数器重装载值(625) |
这篇关于独立看门狗(IWDG)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-05-15鸿蒙生态设备数量超8亿台
- 2024-05-13TiDB + ES:转转业财系统亿级数据存储优化实践
- 2024-05-09“2024鸿蒙零基础快速实战-仿抖音App开发(ArkTS版)”实战课程已上线
- 2024-05-09聊聊如何通过arthas-tunnel-server来远程管理所有需要arthas监控的应用
- 2024-05-09log4j2这么配就对了
- 2024-05-09nginx修改Content-Type
- 2024-05-09Redis多数据源,看这篇就够了
- 2024-05-09Google Chrome驱动程序 124.0.6367.62(正式版本)去哪下载?
- 2024-05-09有没有大佬知道这种数据应该怎么抓取呀?
- 2024-05-09这种运行结果里的10.100000001,怎么能最快改成10.1?