基于 STM32 的脉搏信号采集系统设计—设计文档
基于STM32的脉搏信号检测系统设计

游
基 于S T M3 2 的脉搏 信 号检测 系统 设计
山东科技 大学 电气与 自动4  ̄ : r - 程 学院 孟维 良 王胜 男 李 凯
【 摘要 】脉搏信号包含着许多和人体生理状况有关的参数信息,尤其是和心血管疾病相关 因此,脉搏信号的检测是我们健康体检中不可或缺
图2 . 3滤 波放 大 电路
—
手腕 【 倦
豁
膊 电 摊 l
路
谰
换 去
嗵
变
警 蠢 嚣 搀H
在 电路 中 ,一设 R 3 = R 4 = R ,C 1 = C 2 = C ,则
1
.
t o
电压放 大倍 数表 达为 :
图2 . 1系 统 总体 框 图
2 . 系 统 方 案 与 硬 件 设 计
2 . 1系统总体 方 案
脉 搏信 号检 测系 统 由S T M3 2 处理 器 、脉搏 传感 器 、调理 电路 、 L C D 显 示模块 以及 脉搏 信 号的去 噪处 理 ,其系 统框 图如 下 :
脉 搏 怡 ^ 彗 、 波
3 。 系统软件设计
下位机 设计 主要 包括 主控 芯 片S T M3 2 程序 设计 、L C D显示程 序 设 计等 。 3 . 1 S T M3 2 主控 程序 设计 S T M3 2 作 为 整个 系统 的核 心 ,系统上 电时 它首 先对 各个 外设 模 块 进行 初始 化配 置 ,其初 始化操 作如 下 : ( 1 ) 定时 器中 断初始 化 本设 计选 取通 用 定 时器T I M3 ,设置 定 时器T I M3 的 自动 重载 计 数周 期值 a r r ,预 分频 系数 c , 模式 为 向上计 数 方式 。这 样就 可 以 得 到 定时 时间 为 : ( ( 口 +1 ) ’ ( p s c+1 ) ) / 本 设计要 实现l m s 定时 ,因此 令a r r = 9 , p s c = 7 l 9 9 ,得到 t o = l ms 。 即每定时 l m s ,T I M3 就会产生一 次中断,来计算脉搏数值 。 ( 2 ) A / D转换 初始 化 本 课题 选择 S T M3 2 A D c1 的通道 1 来实 现A / D 转 换 ,具体 设置 如 下步骤 : ( 1 ) 设 置AD C1 的时 钟 。 由于 A D C1 的 时钟 要 求 不超 过 l 4 Mh z , 而 主 时钟 的频 率 为7 2 Mh z ,因此 我们 设置 分频 因子 为6 , 则A D c1 的
基于STM32的脉搏测量仪设计

基于STM32的脉搏测量仪设计脉搏测量仪是一种用于测量人体脉搏的仪器。
本文将设计一种基于STM32的脉搏测量仪,并介绍其主要功能和设计思路。
一、功能需求分析脉搏测量仪的主要功能为测量人体脉搏,并实时显示脉搏波形和心率。
根据这一功能需求,我们可以进一步分析出所需的具体功能模块:1.传感器模块:用于检测人体脉搏,并将其转换为电信号。
2.信号处理模块:对传感器采集到的信号进行放大、滤波和数字化处理。
3.心率计算模块:通过对信号进行处理,实时计算出心率。
4.显示模块:将心率和脉搏波形实时显示在屏幕上。
二、硬件设计1.传感器模块采用光电测量原理,通过红外光发射二极管和光敏电阻来检测人体脉搏。
在手指上放置一个带有光敏电阻的小夹具,通过红外光源照射手指,当光线被血液吸收时,光敏电阻的电阻值会发生变化,从而可以检测到脉搏信号。
2.信号处理模块采用了运放电路来放大和滤波脉搏信号,然后使用STM32的模数转换器将信号转换为数字信号。
运放电路中的放大倍数和滤波器的参数可以通过调试来确定,以获得最佳的脉搏信号质量。
3.心率计算模块将数字信号经过处理后,使用算法计算出心率。
常用的方法是通过寻找脉搏信号的波峰和波谷,然后计算脉搏波的周期,再根据周期计算心率。
4.显示模块使用了液晶显示屏,可以将心率和脉搏波形实时显示在屏幕上。
可以使用STM32的GPIO口和SPI接口来控制液晶显示屏。
三、软件设计1.通过STM32的GPIO口和SPI接口,将数据发送到液晶显示屏上,并实时更新心率和脉搏波形。
可以使用TFTLCD库来进行液晶显示的控制。
2.使用STM32的定时器和中断功能,对脉搏信号进行采样和计算心率。
可以通过设置定时器的时钟源和分频系数来控制采样率。
3.心率计算算法可以在软件中实现,通过对脉搏波形进行检测和分析,计算心率并显示在屏幕上。
四、系统测试在设计完成后,可以进行系统测试来验证脉搏测量仪的功能和性能。
可以通过将传感器模块连接到手指上,然后打开设备,观察屏幕上显示的心率和脉搏波形是否正确。
基于STM32的脉搏心率检测算法设计与实现

基于STM32的脉搏心率检测算法设计与实现近年来,心脏疾病逐渐成为全球范围内的一大健康问题。
随着科技的不断发展,基于STM32的脉搏心率检测算法被广泛应用于医疗设备中,可实时、准确地监测患者的心率。
本文将探讨如何设计和实现一种基于STM32的脉搏心率检测算法。
首先,我们需要了解脉搏信号的特点。
脉搏信号是由心脏收缩引起的压力变化造成的,通常呈现出周期性的波形。
通过对脉搏信号进行分析,我们可以提取出心率信息。
在STM32开发板上实现脉搏心率检测,首先需要获取脉搏信号。
可以通过心率传感器或者一对光电二极管来获取脉搏信号。
光电二极管可通过发射一束红外光和一个光电二极管来实现,当血液流过皮肤时,光电二极管会感应到反射光的变化。
然后我们将采集到的脉搏信号输入到STM32开发板上进行处理。
接下来,需要对脉搏信号进行滤波。
由于脉搏信号中可能包含噪声,为了提高信号的准确性,我们可以使用数字滤波算法对信号进行滤波。
常用的数字滤波算法有移动平均滤波和中值滤波。
移动平均滤波算法通过计算连续n个采样点的平均值来平滑信号。
中值滤波算法则通过计算连续n个采样点的中位数来平滑信号。
选择适当的滤波算法取决于实际应用场景和对信号的要求。
在滤波后,我们需要检测脉搏信号的峰值。
峰值对应于心脏收缩时的压力变化,从而可以推算出心率。
可以通过阈值判定或者差分运算来检测峰值。
阈值判定是通过设定一个合适的阈值,当信号超过或下降到该阈值时,判定为一个峰值;差分运算则是计算相邻两个采样点的差值,当差值为正时判定为上升沿,当差值为负时判定为下降沿,从而检测出峰值。
峰值检测完成后,我们可以根据峰值的时间差来计算心率。
心率的计算公式为:心率 = 60 / 前两个峰值时间差。
通过连续计算多个峰值时间差,可以获得一段时间内的平均心率。
为了提高计算精度,我们可以选择多个峰值时间差进行平均计算。
除了心率,我们还可以通过脉搏信号计算心律的稳定性和变异性。
心律的稳定性反映了心脏的稳定性和健康状况,心律越稳定说明心脏功能越好;变异性则反映了心脏的灵活性和适应能力。
基于STM32的脉搏心率检测仪的软件设计与系统实现

基于STM32的脉搏心率检测仪的软件设计与系统实现脉搏心率检测仪是一种常见的医疗设备,用于监测和记录患者的心率变化。
在本文中,将重点介绍基于STM32的脉搏心率检测仪的软件设计和系统实现。
首先,我们需要了解STM32是什么。
STM32是一种广泛应用于嵌入式系统中的32位微控制器。
它具有强大的处理能力和丰富的外设接口,非常适合用于设计和开发医疗设备,如脉搏心率检测仪。
脉搏心率检测仪由传感器、数据采集模块、信号处理模块和显示模块等组成。
在软件设计和系统实现中,我们需要考虑以下几个关键问题。
首先,我们需要选择适当的编程语言和开发环境。
对于基于STM32的软件设计,C语言是最常用的语言。
您可以选择一个适当的集成开发环境(IDE),如Keil MDK、IAR Embedded Workbench等。
这些IDE提供了强大的调试和模拟功能,方便我们进行软件开发和调试。
其次,我们需要编写数据采集和处理的相关代码。
在脉搏心率检测仪中,最重要的是实时采集和处理心率信号。
我们可以使用STM32的外部中断和定时器等硬件资源,编写相应代码来实现心率信号的采集和处理。
在数据处理方面,可以使用滤波器和算法来提取心率信息,并进行相应的数据处理和分析。
接下来,我们需要对采集到的心率数据进行存储和显示。
STM32具有丰富的存储器接口和图形显示接口,我们可以通过串口、SD卡或者显示屏等方式,将心率数据存储和显示出来。
您可以使用相关的库函数来实现数据的存储和显示。
此外,脉搏心率检测仪还需要具备一些额外的功能,如报警功能、数据传输功能等。
我们可以通过编写相应的代码,来实现这些额外功能的设计与实现。
例如,当心率超过预设阈值时,可以触发报警;当需要将数据传输到其他设备时,可以通过串口或者无线通信等方式,进行数据传输。
最后,我们需要进行系统测试和调试,以验证软件设计和系统实现的正确性和稳定性。
通过对整个系统的测试和调试,我们可以发现并修复潜在的问题,确保系统的正常运行。
基于STM32的便携式脉搏测量系统的设计

基于STM32的便携式脉搏测量系统的设计专业:班级:姓名:目录1 绪论 (6)1.1 选题背景及意义 (6)1.1.1 社会背景 (6)1.1.2 环境背景 (7)1.1.3 经济背景 (8)1.2 意义 (8)1.3 国内外研究现状与水平 (9)1.4 研究的主要内容 (11)2 方案论证 (12)2.1 总体方案设计 (12)2.2 主控模块选型 (12)2.2.1 51单片机 (12)2.2.2 FPGA (13)2.2.3 STM32单片机 (14)2.3 显示模块的选择 (16)2.4 编程语言的选择 (18)2.4.1 汇编语言 (18)2.4.2 C语言 (19)3 电路的设计 (20)3.1 系统总体描述 (20)3.2 单片机 (20)3.3 脉搏传感器 (21)3.4 心率检测模块电路图 (23)3.5 LCD液晶显示模块 (24)3.5.1 LCD1602简介 (24)3.5.2 液晶的成像原理 (25)3.5.3 液晶显示屏的分类 (25)3.6 液晶显示电路 (26)3.7 电源电路和开关 (26)4 系统硬件的设计 (28)4.1 电路原理图绘制 (28)4.2 软件设计 (29)4.2.1 Keil软件的简介 (29)4.3 主函数流程图 (30)5 系统调试 (33)总结 (36)致谢 (37)参考文献 (38)摘要现代科学技术的发展极大带动了产品自动化的发展,并且伴随着经济的发展人们的生活也越来越富裕,几乎都解决了温饱问题,所以人们针对于精神消费以及对自身健康的关注度逐年增高,脉搏检测作为医疗判断的一种方式,人们为了更加了解自身健康一般都会在家庭购买,所以人们对于脉搏检测仪提出了更高的要求,不仅要求其体积微小便于携带,更要求其精确度要更加准确。
因此,本课题旨在设计一个轻巧便携的脉搏检测系统。
本设计采用STM32F103C6系列单片机作为主控芯片,通过搭配脉搏检测传感器和LCD显示屏搭建成此系统,需要实现的功能是当手指或耳垂贴近传感器时,LCD能实时显示出当前脉搏跳动信息。
设计与实现基于STM32的脉搏心率检测仪的硬件系统

设计与实现基于STM32的脉搏心率检测仪的硬件系统脉搏心率检测仪是一种用于测量人体心率的设备,能够帮助人们监测健康状况。
本文将详细介绍基于STM32的脉搏心率检测仪的硬件系统的设计与实现。
1. 系统功能设计脉搏心率检测仪的硬件系统需要实现以下功能:1.1 脉搏检测功能:通过传感器采集心率信息,并通过STM32微控制器进行处理和分析,最终显示用户的心率值。
1.2 数据存储功能:将采集到的心率数据存储到内部存储器中,以便用户后续查看历史数据。
1.3 显示功能:通过液晶显示屏将检测到的心率值实时显示出来,以便用户随时了解自己的心率状况。
1.4 报警功能:当心率超出预设的安全范围时,系统应能发出声音或震动的警报,提醒用户注意健康状况。
2. 硬件设计方案2.1 传感器选择:选择一款高精度的脉搏传感器,能够准确采集心率信号。
常见的心率传感器包括光电式和电阻式传感器,可根据需求选择合适的传感器。
2.2 STM32微控制器选择:选择一款功能强大且集成丰富的STM32微控制器作为主控芯片。
STMicroelectronics公司的STM32系列是一种低功耗、高性能的微控制器,具备丰富的外设,适合用于该硬件系统的设计。
2.3 存储器选择:选择一款容量适当的内部存储器,用于存储采集到的心率数据。
常见的存储器包括闪存和EEPROM,可根据需求选择合适的存储器。
2.4 显示屏选择:选择一款高清液晶显示屏,能够清晰地显示心率数值。
可以选择带有背光和触摸功能的液晶显示屏,以提高用户体验。
3. 硬件系统的实现3.1 连接布局设计:设计合理的硬件连接布局,确保传感器、STM32微控制器、存储器和显示屏等各个组件之间的连线准确无误。
3.2 电源设计:为硬件系统提供稳定的电源。
可使用电池或者外部电源,注意选择合适的电源电压和电流。
3.3 传感器接口设计:将脉搏传感器与STM32微控制器连接,确保传感器能够正常采集心率信号,并传输给微控制器进行处理。
基于STM32人体脉搏无线监测系统的设计论文

基于STM32人体脉搏无线监测系统的设计论文摘要:随着生活水平的提高,人们尤其是老年人对自己的健康也越来越重视。
脉搏的波形及频率能够反应人心血管的生理信息。
所以本文是以armstm32为主控模块,设计一种便携式,*作方便的脉搏检测器。
本系统由脉搏采集、液晶显示、无线发送三个模块组成。
脉搏采集是采集人的脉搏数,液晶用的是12232,显示一分钟被测脉搏数,无线发送就是利用gsm模块实现短信的发送,发送到监测人员起到远程*的效果。
关键词:stm32脉搏检测液晶显示gsm一、系统的整理框架。
以armstm32芯片为处理器,主要的模块主要包括脉搏采集模块,lcd显示模块,gsm数据传输模块。
脉搏采集模块采集到脉搏信号经信号放大及模数转换后传输到处理器中,经过定时器一分钟的计时,在液晶屏上显示一分钟的脉搏数,stm32控制脉搏数据经由sim300agsm模块以gprs形式发送给监测人员。
通过脉搏数的显示,医生可以获知用户的身体状况,节约了大量的时间。
二、系统硬件以及电路构成。
1、脉搏监测电路。
传感器由光敏二级管发*红外和光敏三极管接受红外组成的分别是电路中的d6和q3。
采用发光二极管作为光源时,可基本抑制由呼吸运动造成的脉搏波曲线的漂移。
红外接收三极管在红外光的照*下能产生电能,它的特*是将光信号转换为电信号。
脉搏也即跟心跳同步,每心跳一次血液浓度变化一次,所以通过对手指的血液浓度的变化检测脉搏信号。
脉搏是微弱信号,信号需要放大,并且先通过低频滤波器进行滤波,在进行放大,最后在经过比较器得到脉冲波,输入到stm32里。
2、stm32处理器及主要接口电路。
stm32f103微控制器是使用cortem-m3内核,工作频率为72mhz,内置高速存储器,具有一个usb和一个can,7个定时器、2个adc、9个通信接口,其工作电压常见为3.3v。
armstm32f103控制模块主要完成对脉搏波波形数据的采集,脉搏信号模数转换以及数据的分析和数据的无线收发,与lcd的显示。
基于STM32人体脉搏无线监测系统的设计

基于STM32人体脉搏无线监测系统的设计随着人们对健康的关注日益增加,人体脉搏无线监测系统的设计变得越来越重要。
本文将介绍一种基于STM32的人体脉搏无线监测系统的设计。
人体脉搏无线监测系统是一种能够实时监测人体脉搏并将数据传输到手机或电脑的设备。
它能够帮助人们随时了解自己的健康状况,并及时采取措施以防止疾病的发生。
在这个系统中,STM32是一种微控制器,它能够控制和处理系统的各个部分。
该系统由传感器、信号处理模块、数据传输模块和显示模块组成。
首先,传感器用于检测人体脉搏信号。
传感器通常采用光电传感器,它能够测量血液通过皮肤的光强度变化,并将其转换成电信号。
然后,信号处理模块对传感器采集到的数据进行处理和滤波。
这是为了提高数据的准确性,并去除噪声干扰。
STM32微控制器负责控制信号处理模块的运行并协调各个模块之间的通信。
接下来,数据传输模块将处理后的数据通过无线方式传输到手机或电脑。
这可以通过蓝牙或Wi-Fi技术实现。
这样,用户就可以通过手机或电脑查看自己的脉搏数据,并进行分析和记录。
最后,显示模块可以将数据以图表或数字的形式显示在设备上,方便用户进行实时观察和分析。
这种基于STM32的人体脉搏无线监测系统具有许多优点。
首先,它具有高精度和稳定性,可以准确地检测人体脉搏信号。
其次,该系统具有实时性,可以实时监测脉搏并及时传输数据。
此外,它还具有便携性和易用性,用户可以随时随地监测自己的健康状况。
总之,基于STM32的人体脉搏无线监测系统是一种重要的健康监测设备。
它不仅能够提供准确的脉搏数据,还能够帮助人们随时关注自己的健康状况。
相信在未来,这种系统将会得到更广泛的应用,并为人们的健康保驾护航。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
软件设计说明书目录摘要 (3)1详细设计 (3)1 .1软件简述 (3)1 .2软件功能描述 (4)1 .3频率脉宽测量流程处理.............................................................. 错误!未定义书签。
1 .4频率脉宽测量流程处理.............................................................. 错误!未定义书签。
1 .5SD卡的存储通讯处理................................................................ 错误!未定义书签。
1 .6PWM脉冲发射控制 (11)2编程协定 (14)2 .1操作系统 (14)2 .2调试工具 (14)2 .3编译链接工具 (14)摘要当今许多用于心血管功能等方面的医疗探测治疗设备可以检测、显示和记录能够体现人体健康情况的相关生理信号,已经开发和生产出来用于诊断心血管等疾病的仪器已被投入临床使用[4]。
医务人员参照医疗设备的检测分析结果来对人体深浅动脉的硬化状况作出一个专业的诊断。
目前,国内外也都研发生产了用于协助医生来对心血管功能检测和诊断的多类型多功能的医疗设备仪器。
随着电子技术的发展以及人们对科学诊断的要求,一些精密的多功能的医疗检测仪器相继被研发生产并投入使用,但其核心技术还在探索、细化的成熟过程中[5]。
目前国际上还没有公认的比较完善的标准测量技术指标,每种测量方法都会限于条件而过于偏重理论从而存在不够完善的地方。
脉搏波和动态血管血流学原理的使用,能为我们对疾病的分析提供理论依据。
中医脉诊是基于脉搏波技术,在腕部的挠动脉处来感知脉搏状态的变化从而辨识疾病。
伴随计算机处理计算等技术的提升,医疗检测设备已开始利用电子科学技术来探测及分析疾病特征,找出其中各参数内蕴含的人体生理信息[6]。
目前一些医学检测仪器正尝试利用传感器来代替医生手指感觉,通过传感器来获取人体脉搏信号,来分析脉搏波的特征信息,以此判断人体生理状况。
长久以来,各种高性能多功能的医疗检测设备已被研制,其中一些性能优秀的已应用于临床使用。
这些仪器基本都使用的方法是将某一形式的能量转换装置至于需要检测的部位,原理是将脉搏的压力信号转化成电压信号,然后在进行一系列放大滤波处理,最后以存储等方式记录这些微弱的生理、病理信号,或运用计算机等处理,最终对其进行分析研究[7]。
脉搏波也用于在心血管等疾病的检测中,心血管功能的方面的一些参数需要用到脉搏波中所蕴含的一些特征。
当前有两种最常用的方法,其一为北京工业大学罗志昌等在在大量的实验中提取数据而总结出来的K值分析法。
与临床中获取的参数进行对比,由K 值分析方法导出的血流参数有很比较高的相关性。
根据这一理论方法研发生产的用于检测心血管血流等参数的医疗检测设备已进入医疗器械市场,许多已投入临床使用。
图1.1所示产品为我国生产的TP-CBS I 型心功能参数无创检测仪,其功能可以实现从挠动脉出采集脉搏信息,然后再一起内部分析计算,可检测出13项人体心血管功能方面的参数。
关键词治疗设备采集系统1 详细设计1 .1软件简述本系统以STM32 为核心,外围有脉搏信号调理电路、模数转换电路、LCD 显示及报警电路、串口通信电路,整个系统主要有这些部分构造而成。
本系统的模块化设计思想使得各部分要实现的功能划分的更加清晰明确,设计及调试时都会很方便。
系统框图如图所示。
1 .2软件功能描述1 .2.1 软件功能介绍系统基于STC89C52单片机,主要的模块有热释电红外传感模块、温度检测模块、蜂鸣器报警模块、数码管显示模块和GSM短信报警模块。
系统整体框架如图1所示。
1 .2.2 软件基本框架信号调理部分采用了模拟比较器输入的结构,下图是本软件的基本框架图和主程序流程图。
图一基本框架图本系统需要对获取的模拟信号进行再处理,因为通过脉搏调理电路得到的脉搏信号是仍然掺有杂波等干扰的模拟信号,需要对其进行优化滤波处理后才能被用来参考分析。
本系统使用性能较高的STM32 芯片作系统的处理器,对模拟信号的转换使用的是芯片内部自带的具有较高精度的12 位A/D 转换器,模数信号转换时,算法处理对该数字信号进行滤波和脉搏率计算,并以此得到更符合实际的脉搏信号,然后将处理后的脉搏数字信号以波形的形式显示在LCD 液晶屏上,同时显示脉搏率,给人以清晰的认识,方便观察及分析人体脉搏的变化情况。
当人体脉搏频率发生异常时,系统中的报警电路会发出警报提醒,以便采取措施。
图二主程序流程图1 .3LCD显示系统启动后会先进入系统显示初始化,然后判断K1 是否被按下,按下后进入启动AD 采样流程,对脉搏信号进行转换,然后在处理器中进行中值滤波和移动平均滤波处理,同时计算脉搏频率,然后将脉搏数字信号以波形的形式显示在TFT 液晶屏上并显示脉搏频率。
1 .3.1 子程序流程图1 .3.2 设备侧实现该显示屏支持中、英文字符显示,显示信息量大并且支持串行通信,控制十分方便。
由于STM32主频高达72MHz,故在本设计中选择串行控制,在满足速度要求的条件下节省了IO口。
除了将电源引脚、背光引脚接入系统电源并将PSB引脚接地之外,用单片机的3个IO口操作CS、SID、SCLK3个引脚便可实现对该显示模块的控制。
1 .3.3 设备侧实现为了保证采样的精度,因此采用了2路ADC并联使用,使得采样率达到4.8MHz,保证了在500kHz的噪声频带上也能有10倍的采样率。
将噪声采集后使用DMA传输8192个点的噪声信号,计算噪声的幅度,并根据噪声的最大值与均方根值确定比较器的电压幅度门限,然后通过DAC发出门限电压信号给比较器,形成电压门限。
承载了单频脉冲的待测信号经过了模拟比较器后变成了1个方波信号,方波信号进入了微控制器芯片检测端,该信号会触发中断,从而开始记录信号的脉冲次数以及信号的脉冲长度,通过脉冲长度与脉冲次数的商值可以得到信号的频率、脉宽。
当信号的2次脉冲的间隔小于预设区间或者大于预设区间时,就会被判定为无效脉冲或者是噪声脉冲,由此减小信号的虚警概率。
1 .4热释电红外传感模块热释电红外传感模块主要用来对室内是否有人体进行检测,主要由热释电红外传感器RE20HDB和BISS0001处理芯片构成。
BISS0001是CMOS类具有独立的高输入阻抗运算放大器,可以与多种传感器匹配,进行信号处理,能有效的抑制其他信号的干扰,稳定性高,调节范围广。
1 .4.1 程序流程图1 .4.2 设备侧实现若有人进入热释电红外传感器的扫描范围内,RE200B产生微弱的电压变化使得芯片被触发,经过BISS0001芯片的两级放大后,在VO信号输出端产生3.3 V左右的电压;当没有人经过时,VO端输出0 V,输出电压送入单片机进行判断和处理,从而实现了人体检测。
1 .5GSM短信报警模块通过微控制器的SDIO的接口进行通信,通过CMD命令进行SDHC卡封控制,实现数据的存储,具体初始化与工作的流程如下图。
1 .5.1 程序流程图1 .5.2 设备侧实现GSM模块主要由TC35i、电源电路、串口电路和GSM保护电路组成。
TC35i新版西门子工业GSM模块是一个既支持英文短信又支持中文短信息的工业级GSM模块,支持数据和语音两种格式的SMS短信发送形式,且格式的设置都可通过AT命令来实现。
TC35i短信模块体积小、重量轻、耗能低,具有SIM应用工具包和AT命令集控制等优点。
电源电路为GSM提供合适的电压。
GSM保护电路用于防止供给电压过大。
1 .6PWM脉冲发射控制首先利用STM32F407片内的ADC对外部噪声进行采集,由于需要判断的信号频率在300~500kHz,因此采样率需要设定为500kHz的2倍以上。
STM32F407的单个ADC控制器工作的最高频率为36MHz,并且一个采样周期最短为15个工作周期,因此最大的采样率为2.4MHz。
不过对于更为高速的信号,STM32F407可以将3路ADC并联使用,形成交错采样,因此STM32F407最高的采样率为7.2MHz。
1 .6.1 子程序流程图1 .6.2 设备侧实现经过频率计算后,通过定时器进行物理延时,模拟信号传播的时间,在延时后,启动PWM 定时器,将测量的频率值输入至PWM定时器中。
同时再启动一个定时器,作为控制PWM信号脉冲宽度的定时器。
控制脉冲宽度的定时器控制发射的时间需要比检测到的脉冲长度长20%,以模拟接收到的高频声信号的拖尾现象。
1 .7串口通讯处理1 .7.1 子程序流程图1 .7.2 设备侧实现在本系统设计中,STM32 会通过串口与LabVIEW 上位机进行通讯,当上位机向下位机发送开启串口通讯信号后,下位机会将滤波后的脉搏数字信号会由RS232 串口发送至上位机;如果上位机停止接收数据会像下位机发出信号,此时下位机就会停止数据的发送。
串口数据的接收和发送都是采用中断的方式(软件自动从主函数打断,跳转到中断函数处执行),接收的数据放在数据接收缓冲区中,后面协议解析的数据都是从缓冲区中取来操作。
本智能协议转换器串口部分的软件,分为串口发送和串口接收两部分。
串口采集器相对于终端设备是主机,所以串口发送程序定时间隔主动下发指令采集EPS电源设备的数据信息。
串口下发完命令帧,等待接收终端上传的设备信息,如果在规定的超时时间间隔内未收到数据返回,重复下发同一个命令帧,3次都无数据反馈,则判断串口通信中断。
2 编程协定2 .1操作系统Win7 操作系统,keil MDK Uvision5 集成开发环境2 .2调试工具J-link V8仿真调试器2 .3编译链接工具Keil Uvision 5。