ARM Cortex-A8/A9开发板 | ARM11开发板ARM11开发套件 | ARM9开发板ARM9开发套件 | 飞思卡尔I.MX28I.MX6开发板 |
tiny210/mini210开发板 | mini6410开发板/套餐 | Tiny6410开发板无线套件 | mini2440开发板/套餐 | micro2440开发板带核心板 | 友善开发板配件 模块 | QQ2440 V3 SBC-2410X |
FL2440 OK2440-IV V4 | OK2440-III OK2440V3 | TE2440-II TE2440V2 | OK6410 S3C6410 ARM11 | FL6410/OK6410B ARM11 | TE6410 S3C6410 ARM11 | TE-9263 AT91SAM9263 | 开发板配件 模块和其他 |
Xilinx开发板/fpga开发套件 | altera开发板/fpga开发套件 | 基于FMC FPGA/DSP子卡 |
BeagleBoard原厂开发板 | PandaBoard原厂开发板 |
TI DM3730 DevKit8500D | TI系列 omap3530开发板 | ATMEL系列 开发板 | Samsung系列 开发板 | 开发板配件-仿真器 模块 | NXP LPC3250 mini3250 |
Tiny210 三星S5PV210 | Mini210/Mini210s开发板 | Tiny4412开发板Cortex-A9 | Tiny6410开发板 ARM11 | mini2440开发板 ARM9 | micro2440开发板 ARM9 | mini6410开发板 ARM11 | 友善ARM开发板配件 模块 |
keil ARM仿真器/开发工具 | STM32开发板 Cortex-M3 | NXP LPC开发板Cortex-M3 | ATMEL系列 ARM开发板 | Luminary EKK8962开发板 | Freescale i.MX31开发板 | 三星s3c2440 s3c6410开发板 |
FL2440 OK2440-IV V4 | OK6410 S3C6410 ARM11 | FL6410/OK6410B ARM11 | OK210/-A Cortex-A8 | TE2440-II TE2440V2 | TE6410 S3C6410 ARM11 | TE-9263 AT91SAM9263 | ARM开发板配件 模块等 |
Real6410开发板/套餐 | Real210开发板/Real2410 | WIFI GPS GPRS模块摄像头 |
Xilinx开发板/开发套件KIT | Altera开发板/开发套件KIT | 配套模块 |
NXP LPC开发板 ARM7 | Cortex-M3 STM32开发板 | 最小系统模块类(初学者勿选) | 开发工具 仿真器 调试器 | TFT液晶屏LCD 液晶模块 |
DM642开发板/DM642实验箱 | DM6446开发板/DSP实验箱 | DSP仿真器 液晶屏 摄像头等 |
DM3730/AM3715/AM3359 | OMAP3530AM1808AM3517 | 飞思卡尔Cortex-A9开发板 | ATMEL系列ARM开发板 | NXP LPC3250 LPC1788 | Samsung系列ARM开发板 | STM32系列F207/F407 | ARM开发板配件-仿真器 模块 |
Realv210 S5PV210开发板 | Real6410开发板 ARM11 | WIFI GPS GPRS模块摄像头 |
NXP LPC开发板 ARM7 | Cortex-M3 STM32开发板 | ARM小系统模块(初学勿选) | 开发工具 ARM仿真器 调试器 | TFT液晶屏LCD 液晶模块 |
keil ARM仿真器/开发工具 | STM32开发板 Cortex-M3 | NXP LPC开发板Cortex-M3 | ATMEL系列 ARM开发板 | Luminary EKK8962开发板 | Freescale i.MX31开发板 | 三星s3c2440 s3c6410开发板 |
Exynos4412开发板A9四核 | UT-S5PV210 S5PC100 | UT-S3C6410开发板 ARM11 | idea 6410开发板 ARM11 | UT-S3C2450开发板 ARM9 | UT-S3C2416开发板 ARM9 | UT-S3C6410核心板 工控 |
Xilinx开发板 FPGA开发套件 | altera开发板 FPGA开发套件 | FMC模块 配件 下载线 |
DM642开发板/DM642实验箱 | DM6446开发板/DSP实验箱 | DSP仿真器 液晶屏 摄像头等 |
s3c2410 ARM9 FS2410 | s3c2440开发板 ARM9 | s3c44B0开发板 ARM7 | s3c6410 2450 2443/13 | PXA270 PXA320 PXA255 | Atmel 9200 9261 9G20 | Philips NXP开发板YL-LPC | FS-EP9315开发板ARM9 | LCD液晶屏TFT真彩/触摸屏 | ARM仿真器/仿真调试工具 | ARM开发板配套ARM核心板 |
三星s3c2410 s3c44B0 | 三星s3c6410 s3c2443 | Intel PXA270 PXA320 | UP-CUP OMAP5910平台 | FPGA Xilinx altera平台 | 配件-仿真器 模块 液晶屏LCD | 龙芯开发板UP-DRAGON-I | 物联网教学科研设备 | EDA/FPGA/SOPC教学科研 |
utu2440-F-V4.5 含核心板 | utu2440-S-V4.1 单板结构 | YC2440-F-V5.1开发板 豪华型 | YC-ePC-A系列人机界面 | Mars-EDA套件CPLD FPGA | 触摸屏LCD 摄像头 WI-FI模块 |
ARM开发板/开发平台 | FPGA开发板/开发平台 | 编程器/烧写器下载器烧录 | ZLG 仿真器ARM FPGA DSP | ZLG周立功逻辑分析仪 |
DSP初学者开发套件(DSK) | DSP仿真器/仿真系统 | DSP开发板/DSP试验箱 | DaVinci系列多媒体平台 | Xilinx FPGA大学计划产品 | SEED教学实验系统 | FPGA/DSP FPGA开发板 | TI原厂开发板套件/CCS软件 |
ARM开发板 | XSCALE开发板 | ARM仿真器 | SOPC开发板 | DSP开发板 | 达芬奇系列DSP开发平台 | DSP仿真器 | DSP实验箱 | DSP专业研究平台 | ARM实验箱系列 |
广嵌实验室项目产品 | GEC2440/GEC6410开发板 |
泰克Tektronix示波器 | 普源RIGOL示波器 | USB虚拟示波器 |
UT-S5PC100 UT-S5PV210 | UT-S3C6410开发板 ARM11 | idea 6410开发板 ARM11 | UT-S3C2450开发板 ARM9 | UT-S3C2416开发板 ARM9 | UT-S3C6410核心板 工控 | 开发板模块wifi gps等 |
EMA OMAP3530开发板 | EMA OMAP 3530核心板 |
三星s3c2410 s3c44B0 | 三星s3c6410 s3c2443 | Intel PXA270 PXA320 | UP-CUP OMAP5910平台 | FPGA Xilinx Altera平台 | 配件-仿真器 模块 液晶屏LCD | 龙芯系列 UP-DRAGON-I |
utu2440-F-V4.5 含核心板 | utu2440-S-V4.1 单板结构 | YC2440-F-V5.1开发板 豪华型 | 触摸屏LCD 摄像头 WI-FI模块 | Mars-EDA套件CPLD FPGA | ePC系列工控一体机ARM9 A8 |
ARM开发板/开发平台 | FPGA开发板/开发平台 | 编程器/烧写器下载器烧录 | ZLG 仿真器ARM FPGA DSP | ZLG周立功逻辑分析仪 |
DSP初学者开发套件(DSK) | DSP仿真器 | DSP开发板 | DSP实验箱 | Xilinx FPGA大学计划产品 |
ARM开发板 | XSCALE开发板 | ARM仿真器 | SOPC开发板 | DSP开发板 | 达芬奇系列DSP开发平台 | DSP仿真器 | DSP实验箱 | DSP专业研究平台 | ARM实验箱系列 |
ARM开发板S3C6410等 | Cortex-A8/ARM11仿真器 | ADSP Blackfin开发板 | FPGA Spartan-3E开发板 |
GEC2410开发套件ARM9 | GEC2440开发套件ARM9 |
泰克 示波器 |
多参数监护仪遍及应用于ICU、CCU、病房、手术室等。如今我国也有自主知识产权的产品,如迈瑞、金科威、金脑人等,但与GE、飞利浦天下先辈产品比较,在监测和谋略、可靠性、及时性、稳固性、信号变异的处理惩罚阐发、长途传输等方面都较掉队[1]。
1 引 言
嵌入式体系把谋略机直接嵌入到应用体系之中,它融合了通讯技能和半导体微电子技能,是信息技能IT的终极产品[2]。因此将嵌入式体系,网络等技能应用于医用监护仪范畴,能使多参数监护仪适应当代医用监护仪市场缩小体积,进步数据处理惩罚本领,长途医疗等方面的请求。
本文先容一种基于ARM的及时监护体系,它将32位RISC布局的ARM内核处理惩罚器与及时多任务嵌入式体系相连合,并通过嵌入式TCP/IP协议栈为平台添加网络传输成果,构建一个新型的多参数监护仪体系。
2 体系硬件计划
医用监护仪具有以下几个方面成果:丈量成果、阐发成果、报警成果、打印成果、网络通讯成果等。六参数模块通过导联端、光手指、袖带得到人体的心电、无创血压、血氧、脉率、呼吸、体温六参数信号,通过串口通讯方法与以ARM7为内核的嵌入式处理惩罚器相连,数据从串口送到ARM7中 央处理惩罚器,通过多任务调理,举行及时数据处理惩罚,并在LCD上及时表现种种信号的图形和数值,还可以由外部键盘控制,举行存储和网络发送,并对种种检测信号设置报警线,对高出报警范畴的检测环境举行报警。硬件布局图1所示。
图1 多参数监护仪硬件布局图
3 开辟体系软件计划
3.1 软件开辟总体先容
利用PC机运行的Hitool forARM开辟环境下调试步伐:起首运行体系、Memory及I/O端口的初始化步伐,随掉队入主步伐,采取外部停止方法,果断是否有键输入,如有则调用键盘控制子步伐举行辨认所按下的键,根据键盘的控制实行相应的任务;若无就调用串口读入步伐,征求心电、血氧、血压等数据,并鉴别所征求数据的范例,存入差别地点的SDRAM中,并依次分类举行处理惩罚,处理惩罚完毕,果断是否逾越各自的报警限,如果则调用报警步伐和表现步伐,若不然直接调用表现步伐;如许,种种数据就及时地征求进来,并在LCD上表现测试数值和心电、呼吸波形。此中测试数值按每分钟存储,心电、呼吸波形按键存储,按翻页键可以调出相应的存储波形并举行表现;根据打印和网络下令举行打印和网络下令处理惩罚等。步伐重要用C语言编写。
3.2 串口的处理惩罚
硬件接口采取标准RS-232C异步串行接口,选用发送 (TXD)、吸取(RXD)和地线的三线方法,别的的握手信号直接悬空。要实现六参数模块与S3C44BO之间的串口通讯,必须使两者采取雷同的数据传输方法,它们通讯的数据格局如下;波特率为9600bps, 8位数据位, 1位克制位,无奇偶校验位。
别的,在I/O端口初始化步伐中,定义Uart_Init函数,对串行口各寄存器举行初始化,配置参数时钟和波特率等。在计划中重要举行以下串行口寄存器设置:
·UART线性控制寄存器ULCON1=0x3;
·UART控制寄存器UCON1=0x245;
·UART先辈先出控制寄存器UFCON1=0x1;
·UART波特率寄存器UBRDTV,根据公式谋略出。
在串口读入步伐中,采取了停止方法,来实现双向数据传输,到达及时控制的目标。串口步伐数据吸取进程为:调用Uart_Getch()函数读入N个字符,以数组的方法安排在SDRAM中,然掉队行数据处理惩罚。在lib.C步伐中部分源代码如下:
charUart_Getch()
{…
while(! (rUTRSTAT1& 0x1)); //Receive data ready
return rURXH1;
…}
3. 3 LCD表现
当有新数据必要表现时, LCD表现模块将新的采样数据写入LCD表现存储器中, S3C44BO芯片所支持的LCD控制器在不必要CPU参与的环境下,通过专用DMA主动地将必要表现的数据从表现存储器发送到LCD表现器中。LCD表现器不绝地吸取数据,就在LCD上表现监测内容。
3. 3. 1 LCD初始化
定义Lcd_MonoInit()函数,在LCD的三个控制寄存器中,设置LCD扫描宽度等与硬件时序有关的量:如:利用160×240的好坏单色表现屏, 4-bit单扫描等。在LCD的三个缓冲初始地点寄存器中,重要配置了帧缓冲寄存器BUFFER的肇始地点等。
以上各寄存器根本的配置的源步伐如下:
void Lcd_MonoInit(void) //初始化LCD屏幕
{ //160×240 1bit/1pixelLCD
#defineMVAL_USED 0
rLCDCON1=(0) (1<<5) (MVAL_USED<<7) (0x3<<
8) (0x3<<10) (CLKVAL_MONO<<12);
//disable, 4B_SNGL_SCAN,WDLY=8clk,WLH=8clk
rLCDCON2=(LINEVAL) (HOZVAL<<10) (10<<21);
//LINEBLANK=10(without any calculation)
rLCDSADDR1= (0x0<<27) (((U32) frameBuffer1>>22)<<
21 ) M5D((U32)frameBuffer1>>1);
//monochrome,LCDBANK,LCDBASEU
rLCDSADDR2=M5D( (((U32)frameBuffer1+(SCR_XSIZE*LCD_
YSIZE/8))>>1)) (MVAL<<21) (1<<29)
;
rLCDSADDR3=(LCD_XSIZE/16) ((SCR_XSIZE-LCD_XSIZE) /
16)<<9);
}
3. 3. 2 打开LCD
1)在内核中开辟内存空间用于表现内存
可在表现模块中参加:#define frameBuffer1 0xC400000
2)定义帧缓冲器长度,并对其赋初值设置一个行列与LCD
高宽相映射的数组pbuffer, pbuffer用于存放发送至表现屏的每帧像点数据,像点数据的多少取决于表现屏的大小; pbuffer="BitsPerPixe"*l Lines* /8=160* 240/8=4800(字节)。
由于pbuffer被定义为U32,即32位(八个四位)指针,每一个元素映射LCD表现屏上的一个像素点,表现方法采取4-bit单扫描,以是应当循环4800(字节) /4=1200次,实际上映射的单位数为整个160×240的屏幕范畴。
for( i="0", i<1200; i++)
#(pBuffer[ i])=0x0;
3)数据处理惩罚
LCD的数据处理惩罚重要对要表现的数据举行处理惩罚(4bit到32bit的转换)。
temp_data=(Buf[ i* 4+3]<<24)+(Buf[ i* 4+2]<< 16)+(Buf[*i 4+1]<<8)+(Buf[*i 4]);
3. 3. 3 清屏
清屏对显存的每个单位置零,使屏幕表现打扫。以下为清屏的部分源步伐:
Void clrscreen(void)
{ int ;i
unsigned int* pbuffer;
pbuffer=(U32* )frameBuffer1;
for( i="0"; i<1200; i++)
{
pbuffer[ i]=0;
}
}
3. 3. 4 方式LCD表现函数并向LCD配置写入数据
定义displayLcd()函数为LCD表现函数,用于往显存中写数据,颠末pbuffer送至LCD表现器,并让它循环表如今LCD表现屏上。要在LCD上表现ASCII字符,起首把每个字符转成一个16* 16bit的数组,构成字库(本次实现中利用),然后,选择要表现的字符,从字库中提取字符,经函数调用后,将要表现的字符送至LCD表现器,如许,就在LCD上表现出ASCII字符。
部分源步伐如下:
void displayLCD(void) //LCD表现函数
{
unsigned int* pbuffer, temp_data;
int ;i
pbuffer=(U32* )frameBuffer1;
for( i="0"; i<1200; i++)
{
temp_data=(Buf[ i* 4+3]<<24)+(Buf[ i* 4+2]<<
16)+(Buf[*i 4+1]<<8)+(Buf[*i 4];
//举行4bit到32bit的数据转换处理惩罚
pbuffer[ i]=~temp_data;
Delay(10);
}
}
在添加所用的头文件的同时,增长对LCD_Init()函数、dis-playLCD()等函数的调用。
4 网络下令处理惩罚
在硬件计划上采取以太网口,软件上通过实现瘦TCP/IP网络通 信协议,针对嵌入式体系特点对传统的TCP/IP协议栈举行淘汰[4],让嵌入式多参数监护仪支持轻量级TCP/IP协议栈而 直连续入Internet。在计划将无及时请求和费时的TCP/IP协议簇的处理惩罚放在主步伐次序循环中。网络步伐布局采取次序实行和硬件停止相共同的方法,这种硬件停止是外部时钟停止,停止级别要比非向量模式的FIQ停止级别低,在体系空闲时举行网络数据交互;对网络接口控制芯片采取查问方法,即在其他停止任务的实行间隙处理惩罚瘦TCP/IP协议簇,以捐躯相应速率来调换体系可靠性。
思量到嵌入式医用监护仪在窄宽带不可靠环境下实现及时监测的请求,决定在网络通讯协议的传输层中,选用UDP(用户数据报协议)。
5 结束语
先容一种基于ARM的嵌入式多参数监护仪的计划与实现,并应用于实际丈量,为嵌入式体系在医用监护中的应用提供了一个很故意义的新思路和确切可行的方案。由于该网络监护仪重要面向医院、社区和家庭,具有本钱低、功耗小、数据存储量大、数据处理惩罚速率快、便于长途医疗、能同时实现及时多任务的操纵等各项上风,是当代医疗监护进一步智能化、专业化、小型化、低功耗的生长新方向,困此具有很广阔的市场远景。
博航网 www.broadon.net 版权所有
京ICP备10051899号-2 京公网安备110108006479号