• <li id="00i08"><input id="00i08"></input></li>
  • <sup id="00i08"><tbody id="00i08"></tbody></sup>
    <abbr id="00i08"></abbr>
  • 新聞中心

    EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > C8051F021在遠(yuǎn)程診斷與急救支援系統(tǒng)中的應(yīng)用

    C8051F021在遠(yuǎn)程診斷與急救支援系統(tǒng)中的應(yīng)用

    作者: 時間:2011-04-28 來源:網(wǎng)絡(luò) 收藏


    表1 高速串行通信數(shù)據(jù)幀16位數(shù)據(jù)定義

    本文引用地址:http://www.czjhyjcfj.com/article/172858.htm

    D15~D12D11~D0
    0 0 0 0實時壓力0~300
    0 0 0 1收縮壓60~280
    0 0 1 0舒張壓40~200
    0 0 1 1心率40~200
    0 1 0 1自檢信號
    1 1 1 0測量出錯

    1.2.4 血氧模塊

    血氧模塊通過RS232串行接口傳輸測量結(jié)果,本選用的UARTl與血氧模塊進行數(shù)據(jù)交換,而將UART0分配給無線收發(fā)模塊。

    首先,主微控制器通過設(shè)置優(yōu)先交叉開關(guān)譯碼器XBR0、XBRl和XBR2的值完成數(shù)字資源的動態(tài)分配。優(yōu)先權(quán)交叉開關(guān)譯碼器可以按優(yōu)先權(quán)順序?qū)0~P3口的引腳分配給器件上的數(shù)字外設(shè)(UART、SM-Bus、ICA、定時器等)。

    其次,要實現(xiàn)與血氧模塊的通信,需完成以下寄存器的配置:(1)初始化交叉開關(guān)配置寄存器XBR2,初始值為0x44;分別使能交叉開關(guān)和UARTl;(2)初始化端口0輸出方式寄存器P0MDOUT,初始值為0x05;將P0.2和P0.3分別分配給TXl和RXl;(3)完成UARTl工作模式和波特率的設(shè)置。血氧模塊的串口工作在模式1、波特率為9600bps,采用定時器2完成UABTl對應(yīng)波特率的設(shè)置。

    1.2.5 生理參數(shù)的傳輸

    為了方便患者攜帶和醫(yī)生使用,選用無線收發(fā)芯片nRF401完成生理參數(shù)的無線傳輸。單片收發(fā)芯片nRF401片內(nèi)集成了高頻發(fā)射、高頻接收、PLL合成、FSK調(diào)制、FSK解調(diào)以及多頻道切換等功能模塊。它工作在ISM國際公用頻段,最大能以20kbps的速度進行無線數(shù)據(jù)傳輸[5]。微控制器只需對nRF401進行簡單的控制就可以通過串口完成數(shù)據(jù)的收發(fā),nRF401與C8051F021構(gòu)成的無線通信如圖4所示。

    C8051F021的UART0的設(shè)置與UARTl的設(shè)置相似,首先初始化交叉開關(guān)寄存器XBR0=0x04、XBR2=0x40;分別使能UART0和交叉開關(guān);再初始化特殊功能寄存器P0MDOUT=0x01;將P0.0和P0.1分別分配給TXl和RX1;因為UART0有最高優(yōu)先權(quán),當(dāng)UART0EN設(shè)置為1時,P0.0和P0.1總是分配給TXl和BXl;最后完成UART0工作模式和波特率的設(shè)置。

    為了將采集到的生理參數(shù)發(fā)送給接收,在發(fā)送數(shù)據(jù)之前,芯片首先上電工作(即PWR_UP=1),然后選擇數(shù)據(jù)傳輸通道。nRF401有兩個傳輸通道可供選擇:通道l(433.92MHz)和通道2(434.33MHz)。將TXEN引腳置為高電平(發(fā)送模式),nRF401就能通過微控制器的串口發(fā)送數(shù)據(jù)。

    2 系統(tǒng)軟件的設(shè)計

    系統(tǒng)軟件主要完成以C8051F021為核心的生理參數(shù)的采集和無線發(fā)送。由于要處理多個不同的模塊,在實現(xiàn)過程中采用了巡回檢測的方法。在數(shù)據(jù)傳送過程中,設(shè)置了一個生理信息包協(xié)議,在采集系統(tǒng)和無線發(fā)送模塊之間,定義通信協(xié)議包如表2所示。串口對連續(xù)接收的2個字節(jié)的數(shù)據(jù)依據(jù)協(xié)議規(guī)則重新裝配。由于生理數(shù)據(jù)(心電、血壓、體溫等)一般不超過12位,采集系統(tǒng)將它們分別拆為低7位和高5位進行傳輸。其中,高位的第一位為高位數(shù)據(jù)標(biāo)識,設(shè)為0;低8位的第一位為低位數(shù)據(jù)標(biāo)識,設(shè)為1。

    表2 串口通信協(xié)議包

    1bit2bit5bit1bit7bit
    B7B6B5B4B3B2B1B0B7B6B5B4B3B2B1B0
    0type data1data

    表3 各參數(shù)的具體識別方式

    B6 B5 B4 B3 
    0 0心電參數(shù)(12位)
    1 0 0 0血壓參數(shù)(收縮壓)
    1 0 0 1血壓參數(shù)(舒張壓)
    1 0 1 0心率
    1 0 1 1體溫
    1 1 0 0血樣飽和度

    為了識別不同的生理參數(shù),對不同生理信號設(shè)置不同的信號標(biāo)識進行相應(yīng)的幀編碼。對心電數(shù)據(jù)采用高8位的B6B5識別,其它的各類數(shù)據(jù)采用高8位的B6B5B4B3識別,各參數(shù)的具體識別方式如表3所示。編碼后的數(shù)據(jù)經(jīng)微控制器的UART0與nRF401實現(xiàn)無線發(fā)送。微控制器的UART0設(shè)置為工作模式1,波特率為9600bps。

    系統(tǒng)軟件采用模塊化編程方法,根據(jù)功能將該系統(tǒng)程序分為六個基本模塊:系統(tǒng)初始化模塊(包括C8051F021微控制器I/O口設(shè)置、寄存器及變量的定義)、體溫模塊、心電模塊、血壓模塊、血氧模塊和無線傳輸模塊。系統(tǒng)軟件的流程如圖5所示。


    上一頁 1 2 下一頁

    評論


    相關(guān)推薦

    技術(shù)專區(qū)

    關(guān)閉
    主站蜘蛛池模板: 根河市| 普安县| 中宁县| 松滋市| 望都县| 大关县| 文水县| 化州市| 乃东县| 安吉县| 巴林左旗| 正阳县| 山西省| 阳城县| 唐河县| 河津市| 沐川县| 金寨县| 岐山县| 西乌| 进贤县| 安仁县| 九寨沟县| 章丘市| 东丽区| 永丰县| 六安市| 哈巴河县| 九寨沟县| 攀枝花市| 夏津县| 库车县| 英吉沙县| 宣恩县| 濉溪县| 崇仁县| 云南省| 临沧市| 贵州省| 营山县| 定安县|