心电图(ECG)是心脏疾病诊断的重要手段。
常规心电图是病人在静卧情况下由医院的心电图仪记录的短时间心电活动,由于心脏病发作带有很大的偶然性和突发性,所以在非发作期做常规心电图检查获取疾病信息的几率很低。
因此,将心电监护从病床边、医院内扩展到家中,实现实时远程监护具有重要的现实意义。
互联网尤其是无线网络的迅速普及促使嵌入式技术应用的条件日趋成熟,此外,心电监护对心脏病诊断的重要性也使得远程监护也具有现实的可能性。
本文主要研究并设计了一套实用的便携式移动心电监护系统。
通过该系统可以随时随地将患者的心电信号通过GPRS 网络无线发送到设在医院的PC机上,或者将心电数据先存储在本系统中,然后再通过USB 实现高速回放。
系统的总体设计本文所设计的便携式移动心电监护系统由心电监护仪、通信网络和监护中心三部分组成(如图1 所示)。
其工作过程如下:心电监护仪由患者随身携带,通过粘贴式电极可随时采集用户的心电数据,并进行放大、滤波、A/D 转换,然后存储到串行闪存中。
当存储一定时间的心电数据后,可以通过GPRS 无线上网,利用无线网络将数据传送给位于监护中心的上位机。
也可通过USB 直接连接到上位机,进行本地高速回放。
本文将重点介绍心电监护仪的设计。
由于是便携式设备,所以设计时必须考虑尽量降低功耗、体积和成本。
经过反复地分析比较,最终决定采用Z-World公司的工业级控制芯片Rabbit 3000微处理器作为心电监护仪的主芯片。
尽管Rabbit3000 是8位微处理器,但其内存空间可达1M,主频可达22M。
它具有丰富的接口资源,共有40条并行I/O口线(与串行口共用)。
此外,该器件的功耗非常低,处理器时钟可由32.768KHz 振荡器驱动,并将主振荡器断电。
此时电流约为100μA,而处理器仍能保持每秒10,000 条指令的执行速度。
系统硬件设计在进行总体硬件设计时,以Rabbit3000高性能微处理器为核心,利用外部接口扩展了512 K 的并行Flash 和512K 的SRAM ,存储空间达到1M,并扩展了USB 接口。
利用串行接口扩展了串行Flash、A/D 转换和无线模块MC35。
以下重点介绍无线模块和USB 模块的硬件设计。
1. 无线模块MC35硬件设计无线模块负责完成心电数据的无线传送。
为实现此功能,本系统采用了西门子公司的MC35 模块。
这是西门子公司首款支持GPRS 的GSM/GPRS 模块,体积小巧,易于集成到便携式终端中。
通过串行口连接,使用AT命令对该模块进行控制和数据传送。
西门子公司的MC35模块具有一个40脚的零插入力连接器,该连接器中提供了串行接口、音频接口、SIM 接口、状态引脚、电源接口等接口,通过这些接口与SIM 卡座、天线以及主控制器相连。
MC35的串行接口TXD0 和RXD0 与Rabbit3000的串口B,即引脚TXB 和RXB(PC4 和PC5)相连,以实现与MC35 之间的通信。
MC35 的IGT 引脚为其启动引脚,需要开漏极驱动器驱动。
而Rabbit3000 的端口 E 具有很强的驱动能力,因此选用PE5 作为MC35 的启动控制线。
在MC35 的电源接口中有电源输入引脚、电源输出引脚和充电引脚,其中充电引脚可用来给电池充电。
本系统采用电池供电或外部充电。
如图 2 所示。
设计时需注意的两点是:本系统使用电池供电,由于MC35 在上行传输需提供2A的峰值电流,这会引起电压突然下降,因此设计电路时要加足够大的电容,以防电压突然下降;在S IM卡电路设计时,需要注意电磁兼容性的问题,否则会影响MC35 的通信效果,甚至导致MC35 无法正常工作。
2. USB 模块硬件设计USB 模块负责完成心电数据的本地高速回放,它提供了另一种数据传输手段。
通常的串口RS-232只是利用一条线进行数据传输,而USB 传输是利用D+和D-线上的差分信号,与主机进行数据的传输,充分保证了数据传输的可靠性。
本系统采用恩智浦公司的PDIUSBD 12实现USB 传输。
PDIUSBD12(以下简称D12)是恩智浦公司的一款性价比很高的USB 芯片,完全符合USB1. l 版的规范。
是在USB1.1 协议设备端使用最多的芯片之一,是一种纯粹的USB 接口芯片,需要外部微处理器控制。
本系统利用Rabbit3000 微处理器控制USB 芯片D12 来完成USB 传输,此时D12 就是单片机的一个外设。
D12 与Rabbit3000之间的数据传输是通过8位数据线来实现的,即D1 2 的并口数据线D0-D7 与Rabbit3000 的数据线D0-D7 直接相连。
D12的INT_N 引脚与Rabbit3000复用引脚INT0A相连,作为Rabbit3000的外部中断输入。
当D12 需要进行操作时,就利用INT_N 引脚发出一个中断请求,Rabbit3000 立即响应中断,对其进行操作。
D12的RD_N和WR_N 分别与Rabbit3000的IORD和IOWR相连,以控制数据传输的方向。
D12 的RESET_N 与Rabbit3000 的复用引脚PE4 相连,Rabbit3 000可以利用这个引脚向D12 发出一个低电平,RESET_N 被置为低电平后,D12 便自动复位了。
D12 的CS_N 与Rabbit3000 的复用引脚PE7相连,可以通过这个引脚来控制片选。
如图3 所示。
D12 有两种数据总线方式:多路地址/数据总线方式和单地址数据总线方式。
本系统采用单地址数据总线方式,将D12的ALE接地,A0与Rabbit3000的地址总线A0相连,在片选信号有效的前提下(即PE7=0),当A0=1 时,CPU 给D12 发命令;当A0=0 时,CPU 向D12 写数据或从D12 读数据。
因此,地址0xE001 为发送命令地址,地址0xE000 为读写数据地址。
系统软件设计软件设计借鉴了软件工程的设计思想。
采用了分层和模块化的设计思路,为代码的组织、维护和升级都提供了便利。
而且,即使以后更换硬件系统平台,也能够保证大部分代码可重用。
软件总体结构如图4 所示。
下面重点介绍无线模块和USB 模块的软件设计。
1. 无线模块软件设计无线模块MC35 与Rabbit3000 的串口 B 相连,并通过串口向MC35 发送AT指令,进行拨号、设置等操作。
MC35 与网关的通信协议为PPP协议(Point-to-Point Protocol),PPP 协议是一种基于TCP /IP协议栈的数据链路层协议,是为在两个对等实体间传输数据包,建立简单连接而设计的,主要用于广域网的连接,但在局域网的拨号连接中同样可以采用。
MC35本身不支持PPP 协议,要通过MC35 拨号上网必须编写程序实现PPP协议,同时还要实现TCP/IP协议。
开机后首先初始化MC35 模块,这里要注意的是初始化MC35 模块时,需要给IGT引脚一个低电平,并保持120~140ms,才能完成初始化操作。
然后启动MC35 并登陆移动梦网网关,建立与服务提供商的连接。
登陆成功后,MC35 具有两种工作状态:数据传输状态和空闲状态。
MC35在空闲状态下的电流一般为15mA,而且在空闲状态下,MC35 还支持多种休眠模式。
为降低功耗,本系统启用了MC35 的休眠功能,设置为休眠模式7。
在该休眠模式下,电流可以降到3mA 左右。
2. USB 模块软件设计USB 接口对于使用者来说十分简单方便,但从开发者角度来看,最大的缺点就是协议的复杂性增加了,因此也就导致了USB 设计的复杂性。
USB软件设计包括三个方面:固件(fir mware)设计、驱动程序设计和主机端应用程序的设计。
a. 固件设计固件是固化在单片机中的程序代码,可采用汇编语言或C语言设计。
它运行在微处理器上,用来响应主机的请求。
即它与USB 控制器一起完成枚举过程和主机通信。
USB 协议规定任何传输过程都是由主机端发起并控制的,在枚举过程中,主机通过USB 控制器的端点0 的默认管道建立控制传输过程,D12 响应主机的要求,主要是发送特定的描述符(如设备描述符、配置描述符、接口描述符、端点描述符、字符串描述符和厂商描述符)给主机。
主机从获得的描述符来了解该设备的配置和能力,并完成对USB 设备的配置。
枚举过程结束后,主机就可以与D12 进行数据传输了。
本系统的固件编程采用标准C 语言来编写,设计固件程序时需要注意的是:D12 的中断输出为电平触发,Rabbit3000 的中断为上升沿或下降沿触发。
在设计程序时,使用下降沿加延时,可使低电平保持一段时间,从而达到同样的效果。
b. 驱动程序设计在Windows 系统下,与USB 外设的任何通信都必须通过设备驱动,设备驱动使应用程序访问硬件设备成为可能。
USB 驱动程序的编写与硬件相关,属于核心模式。
微软的DDK在这方面提供了较为详细的说明。
c. 应用程序的设计本系统采用VB编写上位机应用程序。
它主要负责实现利用USB接口从心电监护仪中读取心电数据,并把心电数据保存到数据库中,同时在PC机屏幕上绘制心电波形。
本文小结本文所研制的便携式移动心电监护仪,能够在计算机屏幕上准确地描绘出心电波形,经中国医科大学附属二院的医生认定,可作为临床诊断依据;本系统实用性强,且体积小、经济方便。
患者可随时随地对心脏进行实时监护,而不受时间和空间限制;本系统所具有的无线传输功能,可以实时地把心电数据传送给医院供医生诊断,极大地提高了急救效率。
SIEMENS MC35一、产品说明:• MC35 是西门子公司的第一款GPRS 模块,MC35 GPRS 模块集成到笔记本、掌上电脑、微型电话及其他设备中,将会得到更快的浏览速度。
他的优势在于:永久在线连接、快速数据存储和更快的数据下载速度。
• 该GPRS 模块接收速率可以达到86.20kbps, 发送速率可以达到21.5kbps. 当然最大的数据吞吐量还依赖于GPRS 网络的支持。
• 像TC35 一样MC35 也支持GSM900 和GSM1800 双频网络。
MC35 包括了TC35 的所有功能,另外还具备快速GPRS 技术,这将使MC35 代替TC35 变得更容易。
二、产品特征:• 支持EGSM900 和GSM1800 双频;• 支持GRPS Class 8/Class B ;• 支持GSM phase2/2+ ;• 输出功率:EGSM900 时,2W / GSM1800 时,1W;• 输入电压:3.3~4.8V;• 功耗:休眠状态,3.0mA ;空闲状态,10.0mA ;发射状态,300mA (平均),2.0A(峰值);• 控制:AT 指令直接控制;• 重量:16g;• 体积:54.5×36×6.65mm ;• 环境温度:-25°C / +55°C;• 数据速率:CSD 状态下最大速率14.4kbps,GPRS 状态下行最大速率85.6kbps;• 接口:40pin ,包括电源、3V SIM 卡、RS232 接口、语音、控制等管脚/ 50Ω天线接口。