【生理信号采集系统的低功耗实现案例分析2400字】_第1页
【生理信号采集系统的低功耗实现案例分析2400字】_第2页
【生理信号采集系统的低功耗实现案例分析2400字】_第3页
【生理信号采集系统的低功耗实现案例分析2400字】_第4页
【生理信号采集系统的低功耗实现案例分析2400字】_第5页
已阅读5页,还剩5页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

生理信号采集系统的低功耗实现案例分析目录TOC\o"1-3"\h\u12863生理信号采集系统的低功耗实现案例分析 1151451.1睡眠模式设计 1153241.2待机模式设计 2167991.2.1功能按键电路原理图 3189911.2.2模式切换软件程序设计 437531.2.3最终系统程序框图 7255161.3实验效果 8在实现生理信号采集的低功耗系统的时候,不仅可以在硬件选型上尽量选择低功耗的模块,还可以在软件层面进行相关的低功耗系统的设计。而在本设计中,选择的搭载有STM32F103ZET6这款MCU的STM32单片机,按功耗由高到低排列,具有运行、睡眠、停止和待机四种工作模式。当正常上电复位后,STM32单片机处于正常的运行状态;而在运行状态下,可以根据不同的需求选择进入不同的低功耗模式来降低功耗。其中,三种低功耗的模式说明如下表4-1所示。本设计也主要从睡眠模式和待机模式两种低功耗模式来设计实现生理信号采集的低功耗系统。表4-SEQ表4-\*ARABIC1STM32低功耗模式1.1睡眠模式设计 首先,睡眠模式只是关闭了CPU的时钟,STM32单片机的Cortex™-M3内核停止运行,所有的外设,包括片内和片上的外设仍会继续运行,在程序上表现为不再执行新的指令代码。这个低功耗模式会保留睡眠前的内核寄存器以及内存中的数据。一旦唤醒后,若由中断唤醒,先进入中断,退出中断服务程序后,接着执行WFI指令后的指令代码;若由事件唤醒,则直接执行WFE后的指令代码。 由表4-1可知,睡眠模式可以由任一的中断来唤醒,并且只是CPU的时钟关闭了,对其他的时钟和ADC时钟并无影响。也就是说,对本设计所用到的USART、TIM2、ADC和DMA的时钟并无影响,即使进入睡眠模式,这些外设还是能正常工作的。所以可以利用这个特性,结合本设计的系统整体程序框图(图3-31),采用中断的方式来唤醒。从图3-31可知,在整个系统的运行过程中,main函数在进行系统的初始化之后,就会一直在while循环中不断地判断DMA传输完成标志变量DMA1_Finish_Flag的值,而该标志变量的值又是由DMA传输完成时发生的DMA传输完成中断中置1的。所以为了使得CPU不必一直无意义地循环判断DMA传输完成标志变量DMA1_Finish_Flag的值,提高其运行效率的同时降低系统功耗,就可以在当DMA传输完成标志变量DMA1_Finish_Flag的值为0时,利用WFI指令,使其CPU暂时进入睡眠模式,等到DMA传输完成时发生的DMA传输完成中断来唤醒CPU,再在中断里面将DMA传输完成标志变量DMA1_Finish_Flag的值置1,使其在main函数中可以顺利高效地进行相关的数据滤波和打印操作等。1.2待机模式设计首先,STM32的工作电压(VDD)为2.0~3.6V。通过内置的电压调节器可以提供CPU核心存储器和内置数字外设所需的1.8V的电源。当主电源VDD掉电后,通过VBAT引脚可以为后备供电区域的外部低速时钟(LES)、备份域控制寄存器(RCC_BDCR)和实时时钟(RTC)等提供电源。其电源框图如图4-1所示。图4-SEQ图4-\*ARABIC1STM32电源框图结合表4-1和图4-1可知,在待机模式下,STM32单片机关闭了所有的1.8V区域时钟,也包括HSE和HIS时钟,并且还将电压调节器也给关闭了,即在待机模式下,除了关闭所有的时钟,还把1.8V区域的电源也给完全断掉了。也就是说,当STM32单片机进入待机模式后,会丢失之前代码的运行记录、内存中存储的变量等数据;当STM32单片机从待机模式唤醒后,要重新对芯片进行复位,重新检测BOOT条件,并从头开始执行代码程序,否则无法正常运行。而唤醒的条件可以是WKUP(PA0)引脚的上升沿,即可以利用这个特性,设计出一个开关机的按键WKUP(PA0),当用户按下该按键,就能实现系统的开机或者关机功能,开机功能对应的就是将STM32单片机从待机模式下唤醒,而关机功能对应的就是让STM32单片机进入待机模式,这样就能够在不用到该系统时大大降低其系统的功耗。而在此过程中,是需要一直给STM32单片机供电的,以方便能够检测用户是否按下唤醒按键WKUP(PA0)来唤醒STM32单片机,但是它的所有外设以及所以的时钟都是处于关闭状态,在此状态下并不会消耗多少的电能。1.2.1功能按键电路原理图 在本设计的STM32F103ZET6的最小核心系统开发板中,已经将WKUP(PA0)引脚接到一个按键K1上,并且K1按键连接在VCC的3.3V电源上。如图4-2和图4-3所示。图4-SEQ图4-\*ARABIC2STM32F103ZET6WKUP引脚分配原理图图4-SEQ图4-\*ARABIC3功能按键电路原理1.2.2模式切换软件程序设计由图4-2和图4-3可知,只要按下K1按键,PA0引脚的电平就会被拉高。而为了使得按下K1按键后,在PA0引脚产生一个上升沿信号,在软件设计时就需要将其PA0引脚设置为下拉输入模式。在本设计中,利用K1按键来进行模式的切换,即开机与关机的切换。其设计的目标是达到系统刚上电时,处于关机的状态,当长按K1按键3秒后,系统进行开机,正常运行;而在系统正常运行的情况下,长按K1按键3秒后,系统进行关机,处于待机模式。其设计思路是在系统上电后,进行按键初始化完成的同时进行K1按键的判断,即判断PA0引脚是否有持续3秒的高电平,如果没有,则立即进入待机模式,系统处于关机状态;如果有,则不进入待机模式,系统正常开机运行。而一般情况下,我们不会在系统上电的同时就一直按住K1按键,所以,就相当于系统一上电就进入待机模式处于关机状态。而在系统进入待机模式的情况下,只要检测到PA0引脚有上升沿,便会唤醒CPU,使其程序从头开始执行,而执行到按键初始化完成时判断PA0引脚的状态,一旦判断出有持续3秒的高电平,就不会再进入到待机模式,而是使得程序正常运行,使其达到在关机的状态下,长按K1按键3秒开机的效果。同时,在系统正常运行的情况下,当PA0引脚检测到有上升沿时,便会触发外部中断,在外部中断中再进行PA0引脚的判断,如果此时判断出PA0引脚有持续3秒钟的高电平,则进入待机模式,使其系统处于关机状态;如果PA0引脚没有持续超过3秒钟的高电平,则程序继续正常运行。其WKUP按键初始化过程如下图4-4所示。按键电平判断过程如下图4-5所示。外部中断0的中断函数过程如图4-6所示。图4-SEQ图4-\*ARABIC4WKUP按键初始化配置过程图4-SEQ图4-\*ARABIC5WKUP按键电平判断过程图4-SEQ图4-\*ARABIC6外部中断0的中断函数过程1.2.3最终系统程序框图在图3-31的系统整体程序框图的基础上,加上低功耗模式的设计后,即得到本设计的最终系统程序框图如图4-7和图4-8所示。图4-SEQ图4-\*ARABIC7最终系统初始化过程图4-SEQ图4-\*ARABIC8最终系统程序框图1.3实验效果本设计的最终系统功耗如图4-9和图4-10所示。经过中位值平均滤波后的原始ECG和PPG波形以及经过所有滤波器后的最终效果波形对比图如图4-11和图4-12所示。图4-SEQ图4-\*A

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论