stm32 独立看门狗 IWDG

独立看门狗IWDG
独立看门狗简单理解就是一个12位递减计数器,当计数器从某一个值递减到0时,系统就会产生一次复位

独立看门狗由专用低速时钟LSI驱动,其频率一般在30-60KHz之间,通常选择40KHz作为IWDG时钟

IWDG配置步骤

1.开启寄存器访问
2.设置预分频因子
3.设置重装载值
4.看门狗计数器重装载值
5.开启IWDG

举例

void IWDG_init(u8 prescaler, u16 reload)
{
    IWDG_WriteAccessCmd(IWDG_WriteAccess_Enable); //开启寄存器访问

    IWDG_SetPrescaler(prescaler); //设置预分频因子

    IWDG_SetReload(reload); //设置重装载值

    IWDG_ReloadCounter(); //看门狗计数器重装载值

    IWDG_Enable(); //开启IWDG
}

溢出时间计算

Tout = (4 * 2^prescaler) / 40 * reload; //kb == ms
1280 = (4 * 2^4) / 40 * 800     //1280ms
posted @   thomas_blog  阅读(86)  评论(0编辑  收藏  举报
编辑推荐:
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
点击右上角即可分享
微信分享提示