STM32低功耗模式与烟雾报警器触发信号电路设计

1、STM323种低功耗模式

 

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

 

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

a、工作模式  消耗电流在27mA36mA之间。

 

b、睡眠模式  消耗电流在5.5mA14.4mA之间。

 

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

 

 

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

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

aWAKEUP引脚的上升沿

bRTC闹钟事件

cNRST引脚上的外部复位

dIWDG独立看门狗的复位

 

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

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

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

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

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

 

5、烟雾传感器模块

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

 

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

 

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

时序图如下:

 

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

 

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

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

STM32的复位电路如下:

 

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

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

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

 

posted @ 2016-04-04 19:17  kanite  阅读(5164)  评论(1编辑  收藏  举报