新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > C8051F021在遠程診斷與急救支援系統中的應用

        C8051F021在遠程診斷與急救支援系統中的應用

        作者: 時間:2011-04-28 來源:網絡 收藏


        表1 高速串行通信數據幀16位數據定義

        本文引用地址:http://www.104case.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串行接口傳輸測量結果,本選用的UARTl與血氧模塊進行數據交換,而將UART0分配給無線收發模塊。

        首先,主微控制器通過設置優先交叉開關譯碼器XBR0、XBRl和XBR2的值完成數字資源的動態分配。優先權交叉開關譯碼器可以按優先權順序將P0~P3口的引腳分配給器件上的數字外設(UART、SM-Bus、ICA、定時器等)。

        其次,要實現與血氧模塊的通信,需完成以下寄存器的配置:(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 串口通信協議包

        1bit2bit5bit1bit7bit
        B7B6B5B4B3B2B1B0B7B6B5B4B3B2B1B0
        0type data1data

        表3 各參數的具體識別方式

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

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

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


        上一頁 1 2 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 大宁县| 普陀区| 韩城市| 桐柏县| 溧水县| 藁城市| 墨江| 额敏县| 永康市| 东阿县| 洛宁县| 汤原县| 保亭| 台湾省| 民乐县| 永善县| 鄂州市| 黎城县| 黄梅县| 敖汉旗| 青神县| 新泰市| 吕梁市| 茶陵县| 陇南市| 盘锦市| 兖州市| 安图县| 慈利县| 札达县| 平凉市| 新河县| 宁波市| 长葛市| 自治县| 蕉岭县| 称多县| 得荣县| 栾川县| 铜陵市| 瓦房店市|