C8051F021在遠程診斷與急救支援系統中的應用
摘要:介紹了一種基于C8051F021單片機的多生理參數采集裝置。該裝置作為遠程診斷與急救支援系統的一部分,能動態地獲取患者的生理參數,并通過無線方式傳送給遠端的會診中心,使現場的醫護人員能夠及時得到遠程會診中心的專家指導,為遠程醫療提供基本的醫學信息。
本文引用地址:http://www.104case.com/article/172858.htm隨著多媒體技術、計算機網絡和通信技術的發展,遠程醫療成為目前國際上發展十分迅速的跨學科高新科技。遠程診斷與急救支援系統是遠程醫療的一個重要分支,依靠這個系統,可以將急救現場患者的各種生命信息傳送給遠端的醫生,及時得到醫療指導或診治。這對患者獲得高水平的醫療服務及緊急情況時的急救支援,具有重要意義[1]。
系統中患者生理參數的獲取和傳輸是一個重要組成部分,為此,筆者設計了以美國CYGNAL公司的SOC芯片C8051F021為中央控制單元的多生理參數的采集與無線傳輸裝置。該裝置由生理參數采集部分和實時無線數字傳輸的人機接口組成。這兩部分做成一個小巧的裝置,病人可以方便地攜帶在身上,連續動態地監測病人的體溫、血壓、血氧、脈搏、心電等生理參數,并將這些參數以無線方式發送到與網絡相連的計算機上,經處理后傳送到遠端的會診中心。利用該遠程診斷與急救支援系統,會診中心的專家可以了解病人的狀況,及時指導現場的救護人員對患者實施恰當的救護措施。
1 硬件設計
基于C8051F021的多生理參數采集裝置包括心電模塊、血壓模塊、血氧模塊、體溫模塊和無線數據傳輸模塊五部分,各部分的協調工作和數據的無線傳輸由主微控制器C8051F021管理。主微控制器是該系統的核心,完成體溫和心電參數的檢測,負責控制其它模塊并與之進行數據交換,同時還控制生理參數的無線傳輸。因此,對其運行速度和接口功能都有較高的要求。
C8051F021以其速度快、性能高等特點,能確保心電信號檢測與處理的實時性要求。另外,其豐富的端口資源能滿足各模塊結構設計中所需的多種串行通信接口的需要。其中體溫模塊通過單線接口與微控制器雙向通信;血壓模塊通過高速串行通信方式將采集的參數傳送給C8051F021;血氧模塊則通過UART將檢測的參數結果傳送給微控制器;無線傳輸模塊也是通過微控制器的串口傳送數據。C8051F021內部自帶的A/D轉換、D/A轉換和串行口為系統設計省去了很多外圍電路,大大減小了體積。其框架圖如圖1所示。
1.1 C8051F021簡介
C8051F021是美國CYGNAL公司推齙幕旌閑藕畔低承酒??歉叨燃?傻鈉?舷低場K?度肓艘豢罡咚佟⒌凸?摹⒏咝閱艿?位微處理器,最突出的特點是高速指令處理能力[2、3]。C8051F021采用CIP-51微控制器內核,與MCS-51指令完全兼容。CIP-51采用流水線結構,與標準的8051結構相比,指令執行速度有很大的提高。CIP-51在最大系統時鐘頻率25MHz工作時,其峰值速度可達25MIPS。
C8051F021除了具有標準8051的數字外設部件之外,內部還集成了數據采集和控制系統中常用的模擬部件和其他數字外設及功能部件。片內集成了多通道12位和8位A/D轉換器以及一個雙12位D/A轉換器,兩個增強型UART串口,便于模擬量和數字量的采集、控制和通信傳輸。該單片機還集成有4KB內部數據RAM和64KB Flash以及外部64KB數據存儲器接口(可編程為復用方式和非復用方式)、總線接口、電壓比較器、溫度傳感器等部件,比常規51單片機有更多的定時計數器、中斷、數字I/O接口。片內還配置了標準的JTAG接口(IEEEll49.1)。在上位機軟件的支持下,通過串行的JTAC接口可直接對安裝在最終應用系統上的單片機進行非侵入式、不占用片內資源、全速在線系統的調試,無需另配編程器及仿真器,是目前功能最強大、性能價格比最好的單片機之一[4]。
1.2 各模塊與微控制器通信的實現 完成ADC0相應的寄存器設置后,采用定時器3設置心電采樣時間間隔,心電的采樣頻率設為360Hz。當定時器3溢出中斷時,啟動ADC0開始轉換。通過ADC0控制寄存器ADC0CN.5,判斷轉換是否結束。轉換結束后,采樣結果自動存放在ADC0H的低4位和ADC0L中。讀取這12位心電數據并通過自適應算法抑制心電信號中的基線漂移,獲得穩定的心電信號。
1.2.1 測溫部分
采用DSl8B20溫度傳感器構成測溫系統。DSl8B20是美國DALLAS公司生產的單線數字溫度傳感器,它可把溫度信號直接轉換成串行數字信號供微控制器處理。DSl8B20數字溫度計能提供9位溫度讀數,通過單線接口與C8051F021的I/O口P1.0進行雙向通信。讀寫及溫度變換的功率來自于數據線而不需額外的電源。
1.2.2 心電部分
心電信號經過前置放大和第二級放大后送入C8051F021自帶的A/D轉換器進行采樣。
C8051F021片內集成了兩個多通道ADC子系統(每個子系統包括一個可編程增益放大器和一個模擬多路選擇器)。選用ADC0將心電信號進行A/D轉換。ADC0子系統包括:一個9通道的可配置模擬多路開關(AMUX0)、一個可編程增益放大器(PGA0)和一個100ksps的12位分辨率的逐次逼進寄存器型ADC,ADC中還集成了跟蹤保持電路和可編程窗口檢測器。所有這些特性完全由CIP-51通過特殊功能寄存器控制。心電信號采樣的設置如下:(1)置AMUX0配置寄器AMX0CF=0x00;使AIN0~AIN7為獨立的單端輸入。(2)置AMUX0通道選擇寄存器AMX0SL=0x00;選擇AIN0為ADC0的模擬輸入,即采集的心電信號從AIN0模擬通道輸入C8051F021。(3)置ADC0配置寄存器ADC0CF=0x48;使ACD0采樣/保持放大器獲取輸入的模擬信號的周期數為1/10個系統時鐘,內部放大器增益為1。(4)置ADC0控制寄存器ADC0CN.0=0;使ADC0H和ADC0L寄存器數據右對齊;ADC0CN.7=1;ADC處于活動狀態,并準備轉換數據。(5)置EIE2.1=1;ADC0轉換中斷允許。
1.2.3 血壓模塊
血壓模塊與微控制器之間采用高速串行的通信方式,血壓模塊的工作狀態、測量結果通過兩個功能引腳輸出,供微控制器處理。這兩個功能引腳連接到C8051F021的兩個I/O口,其中輸出的串行時鐘線連到I/O口P1.2,輸出的串行數據線連到I/O口P1.3。若在一個時鐘周期內數據線上出現一個電壓由高到低的跳變,則開始接收數據。
輸出的數據格式如圖2所示。開始處的電壓跳變如圖3所示。開始表示在此后的16個時鐘信號內將傳送16位的數據,其高4位的數據表示數據類型,不同的編碼表示不同的數據,如舒張壓、收縮壓和心率分別有各自的代碼,如表1所示;而低12位數據則表示具體的數值,對應前面的數據類型可以得到收縮壓、舒張壓和心率的數據。
評論