1、STM32的3种低功耗模式

STM32有3种低功耗模式,分别是睡眠模式、停机模式和待机模式。

2、STM32在不同模式下的电流消耗

a、工作模式  消耗电流在27mA至36mA之间。

b、睡眠模式  消耗电流在5.5mA至14.4mA之间。

c、停机模式和待机模式  停机模式消耗电流在15uA  待机模式在5uA

3、各种低功耗模式下的唤醒条件

从上面的图表1可以看到,在睡眠模式下和待机模式下可以利用外部中断唤醒,而停机模式下只能通过以下4种方式唤醒:

a、WAKEUP引脚的上升沿

b、RTC闹钟事件

c、NRST引脚上的外部复位

d、IWDG独立看门狗的复位

4、项目需求与低功耗模式选择

项目的特殊需求有以下两点:

a、有烟雾报警情况下的随时从低功耗模式退出,使用wifi传输报警信号

b、报警器需要定时报告自身的状态,所以到时间了必须从低功耗模式退出。

根据需求b,必须要用STM32的RTC功能。所以功耗选择模式必须选择待机模式,即MCU在运行状态下消耗电流约为30mA,在低功耗模式下消耗电流约为5uA。

5、烟雾传感器模块

烟雾传感器模块的电路主要使用了XC5012芯片。它与Freescale的MC145012 Pin-to-Pin匹配。MC145012的结构框图如下:

注意上图中的IO引脚,它就是为了扩展。它的详细定义如下:

其功能就是当自身烟雾传感器检查到烟雾时,其输出脉冲信号,当其级联时,它可以接受别的模块的报警信号。

时序图如下:

当芯片检查到烟雾报警条件满足时,在IO引脚上输出高电平,直到芯片检查到烟雾报警条件不满足。

6、烟雾传感器与STM32的连接

因为项目需求a的约束,所以必须要用STM32低功耗的待机模式,但是此种低功耗模式不支持外部中断唤醒。因此要利用STM32的WAKEUP引脚唤醒待机模式。

STM32的复位电路如下:

从上图和实际测试可以得出,当系统从低功耗管理复位时,程序代码将重头开始重新跑。

但是硬件电路设计上必须区分,目前的复位重新运行是因为WAKEUP引脚的上升沿引起复位(实际就是因为有烟雾报警的情况而产生复位)还是因为RTC闹钟事件引起的复位(实际就是因为定时报告事件到了而产生的复位)。

根据以上情况设计的接口电路图如下:

STM32低功耗模式与烟雾报警器触发信号电路设计的更多相关文章

  1. 【原创】STM32低功耗模式及中断唤醒(基于BMI160及RTC)的研究

    预研目标 六轴静止时,终端进入低功耗模式:六轴震动时,终端正常工作模式,从而极大减少非工作时的电流消耗. 解决方案 机器静止时,依据六轴算法,CPU进入休眠(停止)模式:机器工作时,触发六轴中断唤醒C ...

  2. STM32的低功耗模式

    一 待机模式standby和STOP模式的区别: 进入低功耗模式:都一样,都是先关闭相应时钟,关闭相应外设,配置相应所有IO口(浮动输入),然后配置相应的唤醒中断源,中断影响的O口,然后调用相应函数进 ...

  3. STM32 低功耗 调试心得

    MCU在进入STOP模式的时候,GPIO的状态都是保持在进入低功耗模式之前的状态,在最小系统中,MCU的GPIO都是悬空的,所以设置为何种状态都不会影响到功耗.但当连接到外设后,外设的电平状态和所连接 ...

  4. FreeRTOS低功耗模式

    在系统或电源复位以后,微控制器处于运行状态.当CPU不需继续运行时,可以利用多种低功耗模式来节省功耗,例如等待某个外部事件时,用户需要根据最低电源消耗,最快速启动时间和可用的唤醒源等条件,选定一个最佳 ...

  5. android wifi SWOL低功耗模式

    1 睡眠模式RX代码流程 ar_wal_rx_patch.c::patch_rx_process_recv_status//调用rx_ctxt->data_ind_handler -> d ...

  6. msp430f149的低功耗模式

    430的低功耗确实很强啊,虽然和VR单片机比起来速度慢了好多.在CPU进行工作时,如果没有什么事情干,就得进入低功耗模式啦,LMPX(0~4)这几种模式的具体事项就是如下的,得记住了. 一,运行模式M ...

  7. android蓝牙的调试(博通蓝牙工作 and 低功耗模式)

    首先结合项目从整体上去把握这部分: 蓝牙模块中一个比较核心的文件是bluetooth.c, 在我们上电的时候, 会调用这个文件中bt_enable()这个函数, 在这个函数里面先调用set_bluet ...

  8. STM32启动模式及API(转)

    源:STM32启动模式及API 我们玩ARM9,一般都是在内存里调试程序,速度飞快.STM32下也可以这样,虽说现在的flash寿命已经很长了,但flash中调试烧录程序还是一个很慢的过程,有时候程序 ...

  9. Doctype的作用?严格模式与混合模式,如何触发者这两种模式,区分它们有何意义?

    Doctype作用?严格模式与混合模式,如何触发者这两种模式,区分它们有何意义? 1.1 Doctype作用 <!DOCTYPE>声明叫做文件类型定义(DTD),声明的作用为了告诉浏览器该 ...

随机推荐

  1. 【bzoj4519】[Cqoi2016]不同的最小割 分治+最小割

    题目描述 学过图论的同学都知道最小割的概念:对于一个图,某个对图中结点的划分将图中所有结点分成两个部分,如果结点s,t不在同一个部分中,则称这个划分是关于s,t的割.对于带权图来说,将所有顶点处在不同 ...

  2. 使用Eclipse+axis2一步一步发布webservice

    1.下载axis2相关软件http://axis.apache.org/axis2/java/core/download.html 2.Java环境配置:JAVA_HOME.JRE_HONE.PATH ...

  3. 集合 Properties 的 简单例子(Spring)

    Java代码: package com.ioc; import java.util.Properties; public class Student { private String name; pr ...

  4. msp430项目编程37

    msp430中项目---usb接口编程37 1.电路工作原理 2.代码(显示部分) 3.代码(功能实现) 4.项目总结

  5. 数字IC设计入门必备——VIM自定义模板调用与VCS基本仿真操作示例

    一.前言 毕业论文答辩结束,闲下来写篇文章.芯片研发人员都在Linux系统下借助各种EDA工具和代码语言完成工作,因此提高代码开发效率,熟练运用开发工具是十分必要的.本文讲述VIM编辑神器的veril ...

  6. hzwer与逆序对

    codevs——4163 hzwer与逆序对 貌似这个题和上个题是一样的((⊙o⊙)…)  时间限制: 1 s  空间限制: 256000 KB  题目等级 : 黄金 Gold 题解       题目 ...

  7. Go -- 交叉编译

    编译Windows程序和mac程序

  8. 在智能手机上跟踪ADS-B系统的飞机航线信息

    飞机飞行的中断可能会给航空公司造成数十亿美员的损失,但即便如此大多数现代商业航班仍旧依赖于存有严重安全问题的空中交通管制系统.到2020年,这些系统将会被升级为一个被称之为NextGen的系统,该系统 ...

  9. Python机器学习--降维

    主成分分析(PCA) 测试 # -*- coding: utf-8 -*- """ Created on Thu Aug 31 14:21:51 2017 @author ...

  10. 数据库系统学习(十)-嵌入式SQL语言之动态SQL

    第十讲 嵌入式SQL语言之动态SQL 静态SQL 区别变量和属性:高级语言向嵌入式SQL传递变量的方法 动态SQL 动态构造SQL语句是应用程序员必须掌握的重要手段 SQL语句的动态构造示例 根据界面 ...