完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
本帖最后由 i2c 于 2014-9-28 11:36 编辑 目前,市场上的血压计大部分仍是水银血压计,电子血压计在国外已经大量普及,而我国才开始应用。水银血压计每次测量必须由医生戴上听诊器进行测量,测量过程复杂,而且不同的医生,测量结果可能不同。而电子血压计弥补了水银血压计的不足。本文使用低功耗MSP430单片机对人体血压信号进行采集,通过USB控制芯片CH375将这些数据存储到U盘中,可以通过PC机的软件分析一天中血压的变化。 1 硬件设计 1.1芯片介绍 MSP430是近几年流行的16位单片机,由于它具有超低功耗(在5V电压下运行于12MHz的80C51工作电流达到十几mA;而MSP430在3V时的工作电流为340μA,在2.2V的工作电流为220μA)、众多的片内外设、强大的数据处理能力、系统工作稳定、方便高效的开发环境等特点,被广泛应用在各种工业仪表中。加之笔者对430单片机比较了解,在本设计中选用了其中的一种MSP430F149,由于该设计中对单片机的外设模块只要求有A/D转换模块,所以可以选用MSP430中较便宜的系列。 CH375是南京沁恒有限公司生产的USB总线的通用接口芯片,支持USB-HOST主机方式和USB-DEVICE/SLAVE设备方式。CH375具有8位数据总线和读、写、片选控制线以及中断输出,可以方便地挂接到单片机/DSP/MCU/MPU等控制器的系统总线上。在USB主机方式下,CH375还提供了串行通讯方式,通过3根线,即串行输入、串行输出和中断输出与单片机/DSP/MCU/MPU等相连接。本文用的是从南京沁恒有限公司申请的样片。LCM用的是16×2的HS162-4。自建了自定义字符,实现了简单显示“血压是:XXX.X”。本文中使用HS162-4为的是试验方便,若是用到实际产品中,可以换用其他种类。 选择Motorola公司压力传感器MPX5050GP,其内部含有信号运放和信号调节功能,可以直接将动脉血液对血管壁的压力转换为0V~4.7V的电信号,其对应的血压值为0kPa~49.875kPa(0mmHg~375mmHg)。传感器采集到的信号送入单片机的AD12模块前要标度变换,即电平平移。 1.2工作原理 血压传感器将用户的血压变换成电压信号,经过滤波器送到149单片机的AD12模块中,再经过单片机处理后在LCM上显示,随时可以看到血压值。并且这些数据可以通过CH375储存在U盘中,在方便时将U盘插到PC机上,可以通过上位机软件进行观察,这样医生可以从整体上了解患者的血压变化情况,从而做出正确的诊疗结果。 1. 3系统框图 MSP430单片机使用串口方式同CH375相连,将数据写入U盘。图1为其原理框图。 1.4硬件设计中遇到的问题 在混合电压系统中,不同电源电压的逻辑器件相互接口时会存在以下3个主要问题:一是加到输入和输出引脚上允许的最大电压限制问题;二是两个电源间电流的互串问题;三是必须满足的输入转换门限电平问题。 在等待或掉电方式时,3V电源降落到0V,大电流将流通到地,这使总线上的高电压被下拉到地,这些情况将引起数据丢失和元件损坏。必须注意的是:不管是在3V工作状态或是0V的等待状态都不允许电流流向Vcc。 所谓输入转换门限电平问题,即噪声容限问题。连接在一起的两个逻辑器件要想正常工作,必须满足高、低噪声容限都为正值。本文中CH375采用5V电源供电,MSP430F149采用3.3V供电。 CH375和MSP430F149的噪声容限值见表1。 MSP430F149驱动CH375时,高噪声容限=2.75V-2V=0.75V;低噪声容限=0.7V-0.25V=0.45V。 CH375驱动MSP430F149时,高噪声容限=4.5V-1.9V=2.7V;低噪声容限=0.9V-0.5V=0.4V。 由于噪声容限都为正值,所以MSP430F149和CH375可以直接相连正常工作。 2 软件设计 2.1串行数据格式问题 由于采用串行接口,串行数据格式必须一致。CH375的串行数据格式为:1个起始位、9个数据位、1个停止位,其中前8个数据位是一个字节数据,最后1个数据位是命令标志位。第9位为0时,前8位的数据被写入CH375芯片中,第9位为1时,前8位被作为命令码写入CH375芯片中。CH375的串行通讯波特率默认是9600b/s,单片机可以随时通过SET_BAUDRATE命令选择合适的通讯波特率。MSP430的通用串行通信模块分异步模式和同步模式。 异步通信的帧格式:1位起始位、7位或8位数据位、校验位(可奇/可偶/可无)、1位地址位(地址模式时)和1位或2位停止位。异步模式又分空闲多机模式和地址位多机模式。同步模式下,允许7位或8位数据流移入或移出MSP430单片机。 对照375的串行数据格式,笔者选用异步模式中的地址位多机模式。这种模式下,字符包含一个附加的位作为地址标志。数据块的第一个字符带有一个置位的地址位,表明该字符是一个地址。结合375的串行数据格式,把430的地址位看作第9位,可以模拟375的串行数据格式。 如果选用没有串行通信模块的430单片机,也可以选用串行方式,解决方法是用普通的IO口模拟串行通信的时序,当然要用到定时器timer。可以用两个函数实现写命令和写数据的功能,程序中要用到位处理指令&,<<,>>等。现给出部分代码程序: 2.2软件滤波程序问题 虽然硬件用了滤波器,在软件中也要编写滤波程序,常用的软件滤波方法有11种,如限幅滤波法、中位值滤波法、算术平均滤波法、递推平均滤波法等。文中采用中位值平均滤波法,即相当于“中位值滤波法”+“算术平均滤波法”,连续采样N个数据,去掉一个最大值和一个最小值,然后计算N-2个数据的算术平均值。N值的选取:3~14。其优点是融合了两种滤波法的优点,可消除由于脉冲干扰所引起的采样值偏差;其缺点是测量速度较慢,和算术平均滤波法一样,比较浪费RAM。由于血压计对测量速度要求不高,而且149的RAM有2kb,所以选用该滤波方法。 2.3U盘读写文件格式问题 对U盘的读写分为两类:把U盘当作存储器,按照文件格式读写U盘。前者读写速度快,操作简单,但计算机不能直接读取写入的数据;后者由于按照文件格式,计算机可以直接看到相应的数据。公司子程序库提供U盘文件操作的API,对于普通用户可以直接调用这些API读写U盘,且可以与计算机无缝连接,但要求有600kb的RAM,若用51单片机则需要外扩RAM。由于笔者熟悉430单片机且149有2kb的RAM,满足要求,这也正是选用430单片机的一个原因。 3 结语 试验证明,该装置可以将采集到的数据成功地放到U盘中,因此可以应用到实践中去。 |
|
相关推荐
1 个讨论
|
|
赞一个。。。。。。。。。。。。。。。
|
|
|
|
|
|
只有小组成员才能发言,加入小组>>
3012个成员聚集在这个小组
加入小组2892 浏览 1 评论
MSP430FR5994 使用库函数 定时器触发AD问题请教
3407 浏览 2 评论
请问怎么把下面51单片机的代码改成msp430 g2 pocket的代码,还有改下时间变成30秒
2322 浏览 1 评论
4781 浏览 1 评论
2556 浏览 1 评论
1294浏览 3评论
MSP430FR5994 使用库函数 定时器触发AD问题请教
3407浏览 2评论
2894浏览 1评论
1454浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-10 16:10 , Processed in 1.445109 second(s), Total 48, Slave 39 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号