基于ARM9处理器的家用远程医疗监护终端设计
极放大和滤波电路
前置放大器部分总的共模抑制比为:
![](../img/eep/emb/emb-560980kpgddeucqf.jpg)
其中:
![](../img/eep/emb/emb-56099qw5farjnayp.jpg)
公式放大器闭环差模增益,Ac:共模增益,CMRRD:运放本身的值;CMRRR:外电路电阻匹配精度限定的CMRR,d:电阻精度。因此在电路中,要精确匹配外电路电阻R812=R813,以使共模输出变得更小。
主放大器采用MAX4197(特性与MAX4196一样),其增益固定为100(V/V)。信号调理电路的总放大倍数为1000倍。在图4中,电容C805具有去除极化电压功能,并与电阻R820构成高通滤波电路,用于抑制直流漂移和放大器通带外的低频噪声。
陷波电路
工频干扰是心电信号的主要干扰,虽然前端电路和前置放大器已对共模干扰具有较强的抑制作用,但有部分工频于扰是以差模信号进入电路的,且频率处于心电信号频带之内,加上电极和输入回路不稳定等因数,前级电路输出的心电信号仍然存在较强的工频干扰,因此必须将其滤除。本设计采用的是无限增益多路反馈型二阶陷波器,电路如图5。
![](../img/eep/emb/emb-56100vrkxakj2fbp.jpg)
图5 陷波电路
嵌入式Web服务器模块
考虑本系统定位于家庭使用,且系统需要连续长时间工作,又由于系统需要良好的人机交互环境、存储大量数据以及支持网络通信,所以要求处理器具有功耗低、成本低、丰富的接口和支持操作系统。本设计选用ARM9处理器S3C2410A,S3C2410A主要面向手持设备以及高性价比、低功耗的应用上。其 CPU内核采用的是ARM公司的16/32位ARM920T RISC处理器。ARM920T实现了MMU、AMBA总线和Harvard高速缓存体系结构,该结构具有独立的16KB指令Cache和16KB数据 Cache。S3C2410A集成的片上功能主要包括:1.8V/2.0V内核供电,3.3V存储器供电,3.3V外部I/O供电;外部存储器控制器;LCD控制器提供1通道LCD专用DMA; 8通道10位ADC接口,转换速率最大为500KSPS(Kilo Sample Per Second,千采样点每秒);117位通用I/O口和24通道外部中断源;电源控制模式包括正常、慢速、空闲和掉电4种模式;支持NAND Flash的启动装载。
对心电信号采样精度的考虑主要出于对ST段异常分析处理的要求,ST段电平变化约为0.05mV,因此采样精度至少为0.025mV。当采用10位 A/D转换器工作在正极性、满刻度电压为2.5V时,可分辨的最小输入电压为2.5mV,而信号调理电路放大倍数为1000倍,则输入端的最小分辨率约为 0.0025mV,故S3C2410A具有的10位A/D的精度完全满足系统需求。
为了使用户能够直观的观察心电和便于控制设备,设计采用东华公司的TFT彩屏YL-LCD35套件用于人机交互界面。为满足移植操作系统以及存储心电信号、网页等数据的要求,系统外扩了64M的NAND Flash(使用一片K9F1208UOB)和64M的SDRAM(使用两片HY57V561620)。为满足终端联网的需求,选用CS8900A用于设计网络适配器,CS8900A是一个真正的单芯片、全双工的以太网解决方案产品,更方便的是在Linux内核中提供有CS8900A适配器的驱动程序。
电源部分
为增加安全性、降低功耗、节省成本,设计采用9V碱性电池供电,通过电源转换芯片AS1117-3.3将9V转换为3.3V可供给放大器芯片和S3C2410使用。
软件设计
软件设计主要包括Linux的移植,嵌入式Web Server-Boa的移植,CGI(通用网关接口)程序的设计,功能程序的设计。
![](../img/eep/emb/emb-56101zhnxcsnjl5v.jpg)
图6 系统软件框图
Linux的移植
本设计采用linux-2.4.18内核。正确进行Linux移植的前提是具备一个与Linux配套、易于使用的BootLoader,它能够正确完成硬件系统的初始化和Linux的引导。本系统中采用vivi,它是由韩国MIZI公司提供的一款针对S3C2410芯片的BootLoader。
Linux内核的目录/arch中包含了所有与硬件体系结构相关的内核移植代码,目录/arch中的每个子目录代表了一种Linux支持的处理器。移植Linux到S3C2410平台主要是修改/arch/arm目录及其子目录下相关的makefile文件和配置文件。例如:修改内核根目录下的 Makefile文件,指明要移植的硬件平台为ARM:ARCH:=arm,指明使用的交叉编译器CROSS_COMPILE=/opt/host /armv41/bin/armv41-unknown-linux-;修改arm/arm目录下的config.in文件,配置S3C2410的相关信息;为初始化处理器,还需在arch/arm/boot/compressed目录下添加head-s3c2410.s文件。内核修改完成后,用命令 make menuconfig配置Linux,再用make zImage命令编译内核,编译通过后则在目录arch/arm/boot下生成zImage内核文件,还需利用工具软件MKCRAMFS制作 cramfs文件系统。最后,在minicom终端的vivi命令行下利用load命令将内核和文件系统下载到目标系统,至此移植完成。
Boa的移植和CGI程序设计
由于嵌入式设备资源有限,并且不需要同时响应多用户请求,因此一般使用一些专门的Web服务器用于
ARM9 相关文章:
- 革新2410D开发板试用手记(04-21)
- 嵌入式Win CE中CAN总线控制器的驱动设计与实现(05-01)
- 嵌入式Web服务器移植与测试(03-03)
- 基于ARM9与Linux的门禁监控系统软件设计(03-08)
- 嵌入式Linux下基于ARM9的媒体播放的设计(03-27)
- SamsungS3C2440平台上的VxworksBSP移植(10-28)