STM32
直播中

王涛

7年用户 1206经验值
私信 关注
[问答]

如何去配置基于STM32F103VBT6的独立看门狗IWDG


STM32F103VBT6芯片有何功能?
如何去配置基于STM32F103VBT6的独立看门狗IWDG?

回帖(2)

陈苏文

2021-9-23 10:34:46
  1.采用内部时钟源64MHZ
  简单说:看门狗的本质就是定时计数器,计数器使能以后一直在累加 而喂狗就是从新写入计数器的值,时计数器从新累加,若是在必定时间内没有接收到喂狗信号(表示MCU已经挂了),便实现处理器的自动复位重启(发送复位信号)。
  系统时钟是位处理器真正运行速度快慢的核心因素,STM32F103VBT6芯片内部时钟最大支持64MHZ,
  
  我们可以看到IWDG(独立看门狗)使用芯片内的是40KHZ的时钟源LSI RC。
  2.独立看门狗IWDG配置
  
  IWDG时钟预分频系数prv = 4分频 ,那么根据公式4*2^4=64就输入64。
  hiwdg.Init.Prescaler = IWDG_PRESCALER_64;//代表4分频,也就是64=4*2^4。 hiwdg.Init.Reload = 4095; 计数器重装载值rlv = 4095 。相当于计时6.552秒。
  超时时间:
  
  
  HAL库独立看门狗函数库讲解:
  看门狗初始化函数
  HAL_IWDG_Init(IWDG_HandleTypeDef *hiwdg)
  喂狗函数:
  HAL_IWDG_Refresh(IWDG_HandleTypeDef *hiwdg)
  举例: HAL_IWDG_Refresh(&hiwdg); //看门狗喂狗 使用该函数定时喂狗便可,注意不喂狗的话程序会反复重启。
举报

h1654155275.5614

2021-9-23 10:34:46
1
举报

更多回帖

发帖
×
20
完善资料,
赚取积分