STM32L4单片机配置STOP模式下停止看门狗计数

本文介绍了如何在STM32L4系列单片机的STOP模式下配置停止看门狗计数,以减少唤醒次数并降低能耗。通过HAL库操作选项字节,实现休眠期间看门狗暂停,唤醒后继续工作。同时提醒在启用硬件看门狗时要注意计时器配置,避免系统因未正确设置而反复重启。
摘要由CSDN通过智能技术生成

 STM32L4系列的单片机,在stop模式或是standby模式下可以停止看门狗计数器,唤醒后,看门狗继续计数。这样,在单片机休眠期间,就可以不用喂狗,避免单片机频繁唤醒,可以节约更多能耗。

配置需要读写芯片内部的OptionBytes,STM32L4的HAL库提供了操作选项字节的方法。

以下代码配置了两个功能:(1)、配置stop模式停止看门狗计数;(2)、配置启用硬件看门狗(芯片上电后会自动开启看门狗)

注意:慎重使用硬件看门狗功能。如果开机没有配置看门狗计时器,而又打开了硬件看门狗功能,因为芯片默认的看门狗复位计时器值很小,所以系统会一直重启。

切记要配置了看门狗计时器以后再去开硬件看门狗功能。

/* USER CODE BEGIN 0 */
void Config_Option_Bytes()
{
  FLASH_OBProgramInitTypeDef OptionsBytesStruct;
  //改写option时,芯片首先会自动擦写掉flash里所有option值,然后再写入。
  //所以要先把当前值读出来,改变某一位后,再写进去
  HAL_FLASHEx_OBGetConfig(&OptionsBytesStruct);
  if ((OptionsBytesStruct.USERConfig & (FLASH_OPTR_IWDG_STOP | FLASH_OPTR_IWDG_SW)) != 0)
  {
    //没有配置过就配置一次,有必要判断一下是否配置过,因为每次配置完都会导致重启,不能每次上电都无条件配置一次
    OptionsBytesStruct.OptionType = OPT
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值