随着现代电子技术的发展,16/32位cpu的广泛应用,传统的生理信号监护仪的cpu系统也在逐渐的由8位cpu向更高位数的处理器发展。随着监护仪功能的强大,对数据处理速度的要求越来越高,使得8位cpu的发展受到了限制,16/32位cpu可以在远高于8位cpu的时钟频率下正常工作,数据一次性吞吐量大,处理器的价格却在下降,16/32位cpu开始被广泛应用于生理信号监护仪中。
该监护系统采用了arm7系列芯片中的lpc2292嵌入式微处理器,主要用来测量人体的生理参数,如:心电图、血压、血氧饱和度、体温等。因为系统需要采集、处理大量的数据信息,而在cpu上用单任务的软件来处理这些数据信息是很难的,甚至是不可能的。因此在设计中选用可同时处理多任务的μc/os-ⅱ操作系统。其提供了安全可靠的操作系统平台,缩短了开发周期。
2 系统硬件设计
arm 7系列芯片lpc2292最小系统如图1所示:
系统的总体结构框图如图2所示。
由图2可看出整个系统以arm 7系列芯片lpc2292为核心,在其外围扩展一些外围电路,从而实现了对人体生理参数:心电、血压、血氧饱和度、体温的安全检查。系统通过心电模块、血压模块、血氧饱和度模块、体温模块采集人体的生理参数、调理电路对这些信号进行滤波和放大,lpc2292自带的a/d转换器将传输过来的模拟信号转换为数字信号,最后人体的各参数指标通过lcd显示。
2.1 arm系统模块
arm系统是这个系统的控制中心,主要完成运算、控制、管理等工作,是系统工作的核心模块。该系统采用的arm 7系列芯片lpc2292,他是基于一个支持实时仿真和跟踪的16/32位cpu,并带有256 kb嵌入的高速flash存储器。128位宽度的存储器接口和独特的加速结构使2位代码能够在最大时钟速率下运行。对代码规模有严格控制的应用可使用16位thumb模式将代码规模降低超过30%,而性能的损失却很小。由于lpc2292的144脚封装、极低的功耗、多个32位定时器、8路10位adc、2路pwm通道以及多达9个外部中断使他们特别适用于医疗系统、汽车、工业控制应用以及容错维护总线。
2.2 lcd显示模块
lcd显示模块主要完成数据显示、输出数据与显示数据的同步等功能。由于lpc2292中没有液晶控制器的功能模块,如果所选择的液晶屏内部也没有液晶控制器,那么,要使cpu可以对液晶进行控制,就必须加设计一个液晶驱动控制电路。因此本系统中选择自带控制器的液晶屏hlm6323。他是5英寸伪彩液晶屏,像素是320×240点阵,每个点需要rgb三色数据,每种色需要1个字节数据表示。而设计要求需要连续观看图图像,根据标准需要每秒钟25帧图像,那么每秒至少需要传输数据为25×8×320×240=15 360 000位数据,若选用串行传输,则需要4.6 mb/s的串行传输速度,但是遗憾的是,没有任何一种串行标准传输大于这个速度,因此,势必需要选择并行的数据传输。
2.3 报警模块
当测得的生理参数,如心电、血压、血氧饱和度、体温超过预设的正常值,则产生报警,提醒患者赶紧进行治疗或医护人员需进行抢救措施。
2.4 flash数据存储器以及usb接口
为了能够确保实时数据的保存,以及提取,从而设计此模块。本系统中选择nand08gw3d2系列的存储器芯片。由于该芯片不同存储密度器件引脚一致,因此系统可以在电路不做改动的情况下升级为高容量存储器件。通过usb设备接口芯片isp1161a1扩展出一个usb的设备接口。通过该usb接口,可以实现将监护系统记录的数据上传到pc机,pc机也可以通过该接口下载程序到lpc2292处理器的存储器中。
2.5 系统电源
电源设计是一个系统设计中的关键部分,对于整个系统,一个稳定的、具有一定功率的电源和合理的电源管理是必不可少的。本系统有以下几种电源:cpu的内核数字和模拟电源电压+1.8 v,cpu的i/o口数字和模拟电源电压+3.3 v、总线的隔离电源、lcd的驱动电源、lcd的背光逆变电源、其他外围设备电源电压+5 v等电源。
3 软件设计
本系统的软件设计主要包括arm的应用程序的开发和μc/os-ⅱ操作系统的移植2个基本部分。arm的应用程序主要包括lcd显示程序、flash存储程序、usb通信程序、键盘扫描程序、a/d程序和报警程序等。μc/os-ⅱ操作系统是协调lpc2292对程序的任务管理和调度。整个系统的软件流程图如图3所示。
3.1 lcd驱动软件的设计思想
lcd驱动软件的功能是完成数据最终输出显示,其主要软件流程有数据的收发、lcd上按键的读取、lcd扫描等。数据收发是为了完成数据与cpu、lcd液晶显示器进行数据的传输,cpu通过驱动芯片向lcd输送数据,而lcd要向cpu返回响应数据等。为了增强人机界面的可读性,在lcd上设置了几个按键,当有按键反应时,应当向cpu发出相应的响应,并且可以通过按键对lcd的显示界面设置和对其他系统参数进行设置。lcd的扫描是为了保证显示不出现明显间断、不出现花屏现象,在出现花屏现象时能够进行准确的错误响应。其中的按键设计没有给每个按键使用硬件中断,因为在本系统中,lcd显示驱动的任务优先级在应用程序中是最高的,按键统一使用一个硬件外部中断,然后用软件对按键进行软件中断安排,确定软件优先级;另一个原因由于按键较多,没有足够的硬件中断设置为按键中断,如果设置为中断扩 展,除了要进行硬件的扩展,还要进行软件扩展,将浪费很多资源。
本设计中,lcd的驱动需要编写2个文件,其中一个是c语言文件,另一个是c语言头文件。c语言文件是通信接口协议文件,需要与其他模块进行数据的交换。而头文件是设计一些lcd基本参数,在系统运行中,这些参数基本不变。
3.2 usb通信软件的设计思想
本系统设计的usb通信软件通过中断响应来实现,这样做的目的是cpu在没有usb设备或者不需要usb设备时,可以进行其他工作,节省cpu和操作系统的资源。其有利于保护cpu。
3.3 flash读写操作软件的设计思想
整个程序文件包括芯片的擦除、芯片的写入和读取、数据的效验等几个部分。擦除是为了存储器能够进行重复利用而不更换芯片;芯片的写入和读取是整个文件的中心,负责存储器的数据的写入,在适当时候要读取数据;效验是为了保证数据的正确,在错误时需要报警。
本设计中,存储器有3个存储器地址入口,所有的数据都需要经过这3个地址入口,因此,必须保证此3个地址入口在任何时刻都没有与其他地址发生地址交叉的状况。
3.4 μc/os-ⅱ操作系统的移植
μc/os-ⅱ实时操作系统是一种可移植、可固化、可裁剪及可剥夺型的多任务实时内核(rtos),适合应用于各种微处理器和微控制器。其性能足可以媲美于各种商用内核,在某些方面表现更佳。所有代码都是采用ansi的c语言编写,故具有良好的可移植性。
μc/os-ⅱ不像其他实时操作系统,他提供给用户的是一个标准的api函数,程序开发人员利用操作系统提供的api函数进行应用程序的开发。要想在μc/os-ⅱ内核上进行应用程序的开发,就需要程序开发人员在实时内核基础上建立自己的实时操作系统。首先,把μc/os-ⅱ移植到自己的硬件目标板上,写出相应的驱动程序以及用户图形界面等;在这些接口函数之上,加上用户自己的应用程序,就构成了嵌入式软件。
μc/os-ⅱ的移植条件是:处理器c编译器能产生可重入型代码;处理器支持中断,并能产生定时中断;用c语言可以开、关中断;处理器支持一定数量的数据存储硬件堆栈;处理器有将堆栈指针及其他cpu寄存内容读出,并保存到堆栈或内存中的指令这5个方面的要求。philips公司lpc2292芯片和ads1.2的c编译器一起可以满足上述5个条件,因此本设计是完全可以移植操作系统,以提高系统的功能。
μc/os-ⅱ软件的体系结构如图4所示:
虽然μc/os-ⅱ大部分源代码是用c语言写的,但是完成和处理器有关的一些代码时,还是必须要用汇编语言来实现的。寄存器的读、写只能通过汇编语言的存储和加载指令实现。
移植μc/os-ⅱ到一个新的体系结构上需要对如下3个文件进行修改:
(1)c语言头文件os-cpu.h;
(2)c语言源文件os-cpu.c;
(3)汇编源文件程序os-cpu-a.asm。
该人体生理参数监护系统在基于arm7微处理器的硬件平台上实现,采用当前流行的μc/os-ⅱ实时多任务操作系统,能实时检测用户的心电、血压、血氧饱和度和体温,并能对其进行数据分析,当出现异常时,能自动报警使用户得到及时救治。该系统可扩展性比较高,可根据需要直接在该系统上进行扩展,使其具有gps,gprs,cdma功能的远程人体生理参数监护仪。
中性导体与保护导体截面选择要求有哪些
武汉凯迪正大KDRB-ZC变压器绕组阻抗测试仪
汽车市场正在成为半导体行业最重要的市场
尘埃落定!Intel官网宣布退出 5G基带业务
【服务器数据恢复】HP LeftHand存储raid5数据恢复案例
嵌入式技术的监护系统的研究与设计
中国移动、华为,干大事!
单芯片77GHz毫米波产品的特点介绍
vivoNEX旗舰版评测 工艺设计科技含量软硬配置皆上乘
机智云智慧网关解决方案,实现不同品牌不同协议的互联互通
基于单片机和加速度传感器实现运动员神经运动反应系统的设计
智慧公安大数据分析管理平台情报研判合成作战系统开发
双十二音质蓝牙耳机选哪一款?四款音质蓝牙耳机耳机推荐
适合DC-8.0 GHz应用的HMC270AMS8GE开关
专业介绍铅酸电池与锂电池的不同特点
Proteus仿真电路原理图
CPA广视角技术和SLCD是什么意思
鲁邦通凭借领先的物联网技术和经验成功入选了工业物联网创新50强
腾讯官方宣布推出“防疫健康码” 检查人员可以轻松掌握并核对健康信息
VR系统带你体验酒驾危害,拒绝酒驾以保障人身安全