甘肃省建设类证书查询网站,搜索优化排名,wordpress主题不显示图片,网页设计的培训机构目录
#xff08;一#xff09;简介
#xff08;二#xff09;CUBEMX工程配置
#xff08;三#xff09;相关函数
总结#xff1a; #xff08;一#xff09;简介
独立看门狗本质是一种定时器#xff0c;其作用是监视系统的运行#xff0c;当系统发生错误…目录
一简介
二CUBEMX工程配置
三相关函数
总结 一简介
独立看门狗本质是一种定时器其作用是监视系统的运行当系统发生错误如程序卡死程序跑飞时能自动让系统复位观察cubemx中的时钟树可以发现IWDG是由LSI提供32KHz的时钟而IWDG内部可以对LSI时钟进行分频预分频系数从4~256须为2的次幂并且系统复位时IWDG的12位递减计数器初值为4095在启动IWDG后计数器递减计数当计数值为0时系统复位所以如果程序正常运行的话必须在规定时间里刷新IWDG内递减计数器的值这就是大家说的“喂狗”以防止系统复位另外根据预分频系数可以算出IWDG的最长超时如下表所示计算方法为T 1 / 32KHz / 预分频系数* 4096注意K表示10e3k才是2e10
重载值为4095时IWDG的超时 预分频系数超时/ms/4512/81024/162048/324096/648192/12816384/25632768 二CUBEMX工程配置
在cubemx中只需要开启IWDG并配置预分频系数和递减计数值即可 三相关函数
IWDG相关函数非常少所以直接贴上来
1、初始化HAL_StatusTypeDef HAL_IWDG_Init(IWDG_HandleTypeDef *hiwdg)初始化之后自动启动
2、喂狗HAL_StatusTypeDef HAL_IWDG_Refresh(IWDG_HandleTypeDef *hiwdg)
3、宏__HAL_IWDG_START(__HANDLE__) 启动iwdg启动后不可关闭
4、宏__HAL_IWDG_RELOAD_COUNTER(__HANDLE__)重置计数值也就是喂狗
5、宏IWDG_ENABLE_WRITE_ACCESS(__HANDLE__)使预分频reg和重载reg可写入
6、宏IWDG_DISABLE_WRITE_ACCESS(__HANDLE__)使预分频reg和重载reg不可写入
IWDG使用方法非常简单只需要在计数值减为0之前按时喂狗即可否则就会重启系统常称为“狗叫” 总结 其实相关内容有许多比如说定时器基本、通用、高级、RTC时钟、ADC、DAC、SPI、I2C、CAN等等等等但是感觉没有必要全部再来一遍当需要用到的时候再重新捡起来因为具体内容确实有点忘了毕竟时间、精力有限其实自我感觉学习这些知识最重要的是去学会了如何发现问题-找相关资料-学习-解决问题一条龙服务 :D Fighting~~~ 完~ 以上均为个人学习心得如有错误请不吝赐教~
THE END