l 系统结构和设计方案
系统主要包括凌阳16位单片机SPCE061A,传感器输入模块,电磁阀驱动模块,语音播放模块,液晶显示模块,键盘控制等几个部分。本系统采用凌阳16位单片机SPCE061A作为主控制芯片,该芯片CPU时钟O.32~9.152 MHz(2.6~3.6 V);内置2 KB SRAM和32 KB FLASH;32位可编程的多功能I/O端口;两个16位定时器/计数器;可编程音频处理;系统备用状态下(时钟处于停止状态)耗电仅为2μA;7通道10位电压模/数转换器;双通道10位DAC方式的音频输入功能,只需要外接功放(SPY0030A)即可完成语音的播放,方便实现系统的语音功能;14个中断源可来自定时器A/B时基,2个外部时钟源输入;具备触键唤醒的功能。另外该单片机具有自己的集成开发环境,支持标准的C语言。可以实现C语言与汇编语言的相互调用,并提供了语音播放的库函数,这样很容易就完成语音的播放,为软件开发提供了方便的条件。血压模拟发生器总体系统设计方案如图1所示。
2 系统硬件部分
该部分主要分为SPCE061A系统部分,电源管理模块,电磁阀驱动,气体压力传感器,语音输出,液晶显示,键盘设置。系统在单片机的控制下,由气体压力传感器对压力采集,并进行A/D转换后交给MCU,将测量结果与预设值进行比较,播放脉搏跳动声音。同时电磁阀开始工作。系统硬件连接图如图2所示。
2.1 电源管理模块
电源管理是任何电子产品都无法回避的问题,也是系统的核心部分,随着能源成本的提升,降低功耗成为电子产品的竞争优势之一。以移动性取胜的便携式产品中以电池供电为主,降低能耗成为便携式产品中电源管理急需解决的问题。系统电源部分采用MAX1705升降压芯片和BQ2057充电管理芯片,MAX1705具有低功耗,高效、低噪声的特点,输出电压在2.5~5.5 V范围内。最大输出电流850 mA,完全可以满足大部分便携式仪器的需要。同时还采用了美国TI公司生产的先进锂电池充电管理芯片BQ2057,它适合单节或双节锂离子电池的充电需要,BQ2057可以动态补偿锂电池组的内阻以减少充电时间,带有可选的电池温度监测,利用电池组温度传感器连续检测电池温度,当电池温度超出设定范围时BQ2057关闭对电池充电。内部集成的恒压恒流器带有高/低边电流感测和可编程充电电流,充电状态识别可由输出的LED指示灯或与主控器接口实现,具有自动重新充电、最小电流终止充电、低功耗睡眠等特性。利用该芯片设计的充电器外围电路极其简单,非常适合便携式电子产品的紧凑设计需要。
2.2 气体压力传感器
该模块采用摩托罗拉公司的MPX5100系列气体压力传感器,可以承受0~100 kPa的压强,输出电压在O.5~4.5 V的范围内,可以满足凌阳单片机I/O的电压输入范围,通过凌阳单片机的A/D转换采集气体压力传感器电压的变化,由于血压计压力表的量程范围是0~300 mmHg,根据760 mmHg=101.3 kPa,得到300 mmHg=39.9868 kPa,并且压力传感器的输入与输出为线性关系,根据多次测量得到公式:
ADValue=K1Value*mmHgValue+offset*K2Value
其中:ADValue为电压经过AD转换后的数字量;mmHgValue为压力表上的刻度值;K1Value=1.8;K2Value=329.17;offset=0.2,offset为校准系数,通过调整offset可以使误差控制在2 mmHg。
2.3 电磁阀驱动电路
该部分主要是模拟人体脉搏跳动,为了更好地模拟血压测量环境,带来更加逼真的效果,采用的电磁阀灵敏度高、噪音小,其吸合电流为100 mA,释放电流为12 mA,工作电压为5 V,当系统初始化以后电磁阀便开始根据设定的心率值工作。通过MCU控制其跳动频率,为了增大驱动电流采用达林顿管,其放大倍数是两个三极管放大倍数的乘积,达到小的基极电流控制大的集电极电流的目的,驱动电磁阀工作,如图3所示。