zoukankan      html  css  js  c++  java
  • STM32一种STANDBY与IWDG同时使用的WORKAROUND方式

    Standby模式

    STM32有多种低功耗模式,Sleep,Stop,Standby,三种模式,Standby模式是功耗是最低的,同时MCU不保存大部分状态,唤醒后系统将重新开始运行。

    IWDG

    对于一些设计来说,不存在复位按键,因此需要配置看门狗防止系统死机,不然死机后需要拨电池,这样就不太人性化。
    IWDG的时钟取决于LSI,同时IWDG开启后就不能被关闭,除非系统复位。

    因此在Standby模式下,看门狗打开后,进入Standby模式下看门狗依旧处于工作状态,即马上引起系统复位,也就是退出了Standby模式,也就起不到关闭系统的作用。使用线路板实测的结果也是这样。

    Workaround

    正常运行时看门狗肯定是开启的状态,那么当进入Standby模式时,系统必然自动复位,在此时来判断是否为开机(此处用长按开机键作为开机信息,短按理论也行,只是成功率可能会存在问题)。如果没有开机信号,就再次进入Standby模式(同时使能唤醒管脚),否则开启看门狗进入正常运行状态。以这种形式来实现Standby与IWDG共同使用。当然如果关机时,长按开机键,关机操作同时也会失效。

    流程图

    现象

    如果出现程序跑飞的情况,或喂狗不及时的情况,系统并不会重启,只会自动关机,但这种情况依旧可以解决死机不需要复位键的情形。

  • 相关阅读:
    集合(二)
    集合(一)
    面向对象(三)
    面向对象(二)
    面向对象(一)
    关键字
    java基础
    android开发_LogCat的使用
    linux基础之CentOS7新特性
    shell编程(二)之算术运算
  • 原文地址:https://www.cnblogs.com/stupidpeng/p/14447153.html
Copyright © 2011-2022 走看看