使用stm32L03进入睡眠自动唤醒后看门狗会自动复位
2019-07-14 18:37发布
打开微信“扫一扫”,打开网页后点击屏幕右上角分享按钮
具体描述如下:
1、 单片机在进入睡眠模式前卫喂一次够,看门狗设定的时间 为 6-8s,单片机的睡眠时间设定的是 5s
按照这样的时间设置,单片机醒来后,应该是不会重启才对的,每次单片机醒来后又喂了一次够,
但是还是会重启 ???????
相关代码如下:
- <font size="4">#define PRER_VAL IWDG_PRESCALER_64
- #define RLR__VAL (uint32_t)(625*7) //目前设置看门狗复位时间为 7s
- //初始化
- void IWDG_Init(void)
- {
- printf("IWDG Init ... ...
");
- IWDG->KR = 0X5555; //解除寄存器保护
- IWDG->PR = PRER_VAL; // 写入初始化分频值
- IWDG->RLR = RLR__VAL; // 写入自动装载值
- IWDG->KR = 0XAAAA; //开启寄存器保护
- IWDG->KR = 0XCCCC; //启动看门狗
- }
- //喂狗
- void IWDG_Refresh(void)
- {
- IWDG->KR=0XAAAA;
- }</font>
复制代码
一周热门 更多>