C8051F021在远程诊断与急救支援系统中的应用
;而低12位数据则表示具体的数值,对应前面的数据类型可以得到收缩压、舒张压和心率的数据。
表1高速串行通信数据帧16位数据定义
D15~D12D11~D00000实时压力0~3000001收缩压60~2800010舒张压40~2000011心率40~2000101自检信号1110测量出错
1.2.4血氧模块
血氧模块通过RS232串行接口传输测量结果,本系统选用C8051F021的UARTl与血氧模块进行数据交换,而将UART0分配给无线收发模块。
首先,主微控制器C8051F021通过设置优先交叉开关译码器XBR0、XBRl和XBR2的值完成数字资源的动态分配。优先权交叉开关译码器可以按优先权顺序将P0~P3口的引脚分配给器件上的数字外设(UART、SM-Bus、ICA、定时器等)。
其次,要实现C8051F021与血氧模块的通信,需完成以下寄存器的配置:(1)初始化交叉开关配置寄存器XBR2,初始值为0x44;分别使能交叉开关和UARTl;(2)初始化端口0输出方式寄存器P0MDOUT,初始值为0x05;将P0.2和P0.3分别分配给TXl和RXl;(3)完成UARTl工作模式和波特率的设置。血氧模块的串口工作在模式1、波特率为9600bps,采用定时器2完成UABTl对应波特率的设置。
1.2.5生理参数的传输
为了方便患者携带和医生使用,选用无线收发芯片nRF401完成生理参数的无线传输。单片收发芯片nRF401片内集成了高频发射、高频接收、PLL合成、FSK调制、FSK解调以及多频道切换等功能模块。它工作在ISM国际公用频段,最大能以20kbps的速度进行无线数据传输[5]。微控制器只需对nRF401进行简单的控制就可以通过串口完成数据的收发,nRF401与C8051F021构成的无线通信系统如图4所示。
C8051F021的UART0的设置与UARTl的设置相似,首先初始化交叉开关寄存器XBR0=0x04、XBR2=0x40;分别使能UART0和交叉开关;再初始化特殊功能寄存器P0MDOUT=0x01;将P0.0和P0.1分别分配给TXl和RX1;因为UART0有最高优先权,当UART0EN设置为1时,P0.0和P0.1总是分配给TXl和BXl;最后完成UART0工作模式和波特率的设置。
为了将采集到的生理参数发送给接收系统,在发送数据之前,芯片首先上电工作(即PWR_UP=1),然后选择数据传输通道。nRF401有两个传输通道可供选择:通道l(433.92MHz)和通道2(434.33MHz)。将TXEN引脚置为高电平(发送模式),nRF401就能通过微控制器的串口发送数据。
2系统软件的设计
系统软件主要完成以C8051F021为核心的生理参数的采集和无线发送。由于要处理多个不同的模块,在实现过程中采用了巡回检测的方法。在数据传送过程中,设置了一个生理信息包协议,在采集系统和无线发送模块之间,定义通信协议包如表2所示。串口对连续接收的2个字节的数据依据协议规则重新装配。由于生理数据(心电、血压、体温等)一般不超过12位,采集系统将它们分别拆为低7位和高5位进行传输。其中,高位的第一位为高位数据标识,设为0;低8位的第一位为低位数据标识,设为1。
表2串口通信协议 《C8051F021在远程诊断与急救支援系统中的应用(第3页)》
本文链接地址:http://www.oyaya.net/fanwen/view/178306.html
表1高速串行通信数据帧16位数据定义
D15~D12D11~D00000实时压力0~3000001收缩压60~2800010舒张压40~2000011心率40~2000101自检信号1110测量出错
1.2.4血氧模块
血氧模块通过RS232串行接口传输测量结果,本系统选用C8051F021的UARTl与血氧模块进行数据交换,而将UART0分配给无线收发模块。
首先,主微控制器C8051F021通过设置优先交叉开关译码器XBR0、XBRl和XBR2的值完成数字资源的动态分配。优先权交叉开关译码器可以按优先权顺序将P0~P3口的引脚分配给器件上的数字外设(UART、SM-Bus、ICA、定时器等)。
其次,要实现C8051F021与血氧模块的通信,需完成以下寄存器的配置:(1)初始化交叉开关配置寄存器XBR2,初始值为0x44;分别使能交叉开关和UARTl;(2)初始化端口0输出方式寄存器P0MDOUT,初始值为0x05;将P0.2和P0.3分别分配给TXl和RXl;(3)完成UARTl工作模式和波特率的设置。血氧模块的串口工作在模式1、波特率为9600bps,采用定时器2完成UABTl对应波特率的设置。
1.2.5生理参数的传输
为了方便患者携带和医生使用,选用无线收发芯片nRF401完成生理参数的无线传输。单片收发芯片nRF401片内集成了高频发射、高频接收、PLL合成、FSK调制、FSK解调以及多频道切换等功能模块。它工作在ISM国际公用频段,最大能以20kbps的速度进行无线数据传输[5]。微控制器只需对nRF401进行简单的控制就可以通过串口完成数据的收发,nRF401与C8051F021构成的无线通信系统如图4所示。
C8051F021的UART0的设置与UARTl的设置相似,首先初始化交叉开关寄存器XBR0=0x04、XBR2=0x40;分别使能UART0和交叉开关;再初始化特殊功能寄存器P0MDOUT=0x01;将P0.0和P0.1分别分配给TXl和RX1;因为UART0有最高优先权,当UART0EN设置为1时,P0.0和P0.1总是分配给TXl和BXl;最后完成UART0工作模式和波特率的设置。
为了将采集到的生理参数发送给接收系统,在发送数据之前,芯片首先上电工作(即PWR_UP=1),然后选择数据传输通道。nRF401有两个传输通道可供选择:通道l(433.92MHz)和通道2(434.33MHz)。将TXEN引脚置为高电平(发送模式),nRF401就能通过微控制器的串口发送数据。
2系统软件的设计
系统软件主要完成以C8051F021为核心的生理参数的采集和无线发送。由于要处理多个不同的模块,在实现过程中采用了巡回检测的方法。在数据传送过程中,设置了一个生理信息包协议,在采集系统和无线发送模块之间,定义通信协议包如表2所示。串口对连续接收的2个字节的数据依据协议规则重新装配。由于生理数据(心电、血压、体温等)一般不超过12位,采集系统将它们分别拆为低7位和高5位进行传输。其中,高位的第一位为高位数据标识,设为0;低8位的第一位为低位数据标识,设为1。
表2串口通信协议 《C8051F021在远程诊断与急救支援系统中的应用(第3页)》