STM32
直播中

李涛

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

怎样去计算独立看门狗IWDG的溢出时间

独立看门狗IWDG有哪些配置步骤?
怎样去计算独立看门狗IWDG的溢出时间?

回帖(1)

张宁

2021-9-23 11:12:34
  独立看门狗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 == ms1280 = (4 * 2^4) / 40 * 800 //1280ms
举报

更多回帖

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