基于MSP430單片機(jī)及USB總線的便攜式血壓計的設(shè)計
目前,市場上的血壓計大部分仍是水銀血壓計,電子血壓計在國外已經(jīng)大量普及,而我國才開始應(yīng)用。水銀血壓計每次測量必須由醫(yī)生戴上聽診器進(jìn)行測量,測量過程復(fù)雜,而且不同的醫(yī)生,測量結(jié)果可能不同。而電子血壓計彌補(bǔ)了水銀血壓計的不足。本文使用低功耗MSP430單片機(jī)對人體血壓信號進(jìn)行采集,通過USB控制芯片CH375將這些數(shù)據(jù)存儲到U盤中,可以通過PC機(jī)的軟件分析一天中血壓的變化。
本文引用地址:http://butianyuan.cn/article/78636.htm1 硬件設(shè)計
1.1芯片介紹
MSP430是近幾年流行的16位單片機(jī),由于它具有超低功耗(在5V電壓下運(yùn)行于12MHz的80C51工作電流達(dá)到十幾mA;而MSP430在3V時的工作電流為340μA,在2.2V的工作電流為220μA)、眾多的片內(nèi)外設(shè)、強(qiáng)大的數(shù)據(jù)處理能力、系統(tǒng)工作穩(wěn)定、方便高效的開發(fā)環(huán)境等特點(diǎn),被廣泛應(yīng)用在各種工業(yè)儀表中。加之筆者對430單片機(jī)比較了解,在本設(shè)計中選用了其中的一種MSP430F149,由于該設(shè)計中對單片機(jī)的外設(shè)模塊只要求有A/D轉(zhuǎn)換模塊,所以可以選用MSP430中較便宜的系列。
CH375是南京沁恒有限公司生產(chǎn)的USB總線的通用接口芯片,支持USB-HOST主機(jī)方式和USB-DEVICE/SLAVE設(shè)備方式。CH375具有8位數(shù)據(jù)總線和讀、寫、片選控制線以及中斷輸出,可以方便地掛接到單片機(jī)/DSP/MCU/MPU等控制器的系統(tǒng)總線上。在USB主機(jī)方式下,CH375還提供了串行通訊方式,通過3根線,即串行輸入、串行輸出和中斷輸出與單片機(jī)/DSP/MCU/MPU等相連接。本文用的是從南京沁恒有限公司申請的樣片。LCM用的是16×2的HS162-4。自建了自定義字符,實現(xiàn)了簡單顯示“血壓是:XXX.X”。本文中使用HS162-4為的是試驗方便,若是用到實際產(chǎn)品中,可以換用其他種類。
選擇Motorola公司壓力傳感器MPX5050GP,其內(nèi)部含有信號運(yùn)放和信號調(diào)節(jié)功能,可以直接將動脈血液對血管壁的壓力轉(zhuǎn)換為0V~4.7V的電信號,其對應(yīng)的血壓值為0kPa~49.875kPa(0mmHg~375mmHg)。傳感器采集到的信號送入單片機(jī)的AD12模塊前要標(biāo)度變換,即電平平移。
1.2工作原理
血壓傳感器將用戶的血壓變換成電壓信號,經(jīng)過濾波器送到149單片機(jī)的AD12模塊中,再經(jīng)過單片機(jī)處理后在LCM上顯示,隨時可以看到血壓值。并且這些數(shù)據(jù)可以通過CH375儲存在U盤中,在方便時將U盤插到PC機(jī)上,可以通過上位機(jī)軟件進(jìn)行觀察,這樣醫(yī)生可以從整體上了解患者的血壓變化情況,從而做出正確的診療結(jié)果。
1. 3系統(tǒng)框圖
MSP430單片機(jī)使用串口方式同CH375相連,將數(shù)據(jù)寫入U盤。圖1為其原理框圖。
1.4硬件設(shè)計中遇到的問題
在混合電壓系統(tǒng)中,不同電源電壓的邏輯器件相互接口時會存在以下3個主要問題:一是加到輸入和輸出引腳上允許的最大電壓限制問題;二是兩個電源間電流的互串問題;三是必須滿足的輸入轉(zhuǎn)換門限電平問題。
器件對加到輸入和輸出腳的電壓通常是有限制的。這些引腳有二極管或分離元件流向電源。例如3V器件的輸入端接上5V信號,則5V電源將會向3V電源充電,持續(xù)的電流會損壞二極管和電路元件。
在等待或掉電方式時,3V電源降落到0V,大電流將流通到地,這使總線上的高電壓被下拉到地,這些情況將引起數(shù)據(jù)丟失和元件損壞。必須注意的是:不管是在3V工作狀態(tài)或是0V的等待狀態(tài)都不允許電流流向Vcc。
所謂輸入轉(zhuǎn)換門限電平問題,即噪聲容限問題。連接在一起的兩個邏輯器件要想正常工作,必須滿足高、低噪聲容限都為正值。本文中CH375采用5V電源供電,MSP430F149采用3.3V供電。
CH375和MSP430F149的噪聲容限值見表1。
MSP430F149驅(qū)動CH375時,高噪聲容限=2.75V-2V=0.75V;低噪聲容限=0.7V-0.25V=0.45V。
CH375驅(qū)動MSP430F149時,高噪聲容限=4.5V-1.9V=2.7V;低噪聲容限=0.9V-0.5V=0.4V。
由于噪聲容限都為正值,所以MSP430F149和CH375可以直接相連正常工作。
2 軟件設(shè)計
2.1串行數(shù)據(jù)格式問題
由于采用串行接口,串行數(shù)據(jù)格式必須一致。CH375的串行數(shù)據(jù)格式為:1個起始位、9個數(shù)據(jù)位、1個停止位,其中前8個數(shù)據(jù)位是一個字節(jié)數(shù)據(jù),最后1個數(shù)據(jù)位是命令標(biāo)志位。第9位為0時,前8位的數(shù)據(jù)被寫入CH375芯片中,第9位為1時,前8位被作為命令碼寫入CH375芯片中。CH375的串行通訊波特率默認(rèn)是9600b/s,單片機(jī)可以隨時通過SET_BAUDRATE命令選擇合適的通訊波特率。MSP430的通用串行通信模塊分異步模式和同步模式。
異步通信的幀格式:1位起始位、7位或8位數(shù)據(jù)位、校驗位(可奇/可偶/可無)、1位地址位(地址模式時)和1位或2位停止位。異步模式又分空閑多機(jī)模式和地址位多機(jī)模式。同步模式下,允許7位或8位數(shù)據(jù)流移入或移出MSP430單片機(jī)。
對照375的串行數(shù)據(jù)格式,筆者選用異步模式中的地址位多機(jī)模式。這種模式下,字符包含一個附加的位作為地址標(biāo)志。數(shù)據(jù)塊的第一個字符帶有一個置位的地址位,表明該字符是一個地址。結(jié)合375的串行數(shù)據(jù)格式,把430的地址位看作第9位,可以模擬375的串行數(shù)據(jù)格式。
如果選用沒有串行通信模塊的430單片機(jī),也可以選用串行方式,解決方法是用普通的IO口模擬串行通信的時序,當(dāng)然要用到定時器Timer。可以用兩個函數(shù)實現(xiàn)寫命令和寫數(shù)據(jù)的功能,程序中要用到位處理指令&,<<,>>等?,F(xiàn)給出部分代碼程序:
2.2軟件濾波程序問題
雖然硬件用了濾波器,在軟件中也要編寫濾波程序,常用的軟件濾波方法有11種,如限幅濾波法、中位值濾波法、算術(shù)平均濾波法、遞推平均濾波法等。文中采用中位值平均濾波法,即相當(dāng)于“中位值濾波法”+“算術(shù)平均濾波法”,連續(xù)采樣N個數(shù)據(jù),去掉一個最大值和一個最小值,然后計算N-2個數(shù)據(jù)的算術(shù)平均值。N值的選取:3~14。其優(yōu)點(diǎn)是融合了兩種濾波法的優(yōu)點(diǎn),可消除由于脈沖干擾所引起的采樣值偏差;其缺點(diǎn)是測量速度較慢,和算術(shù)平均濾波法一樣,比較浪費(fèi)RAM。由于血壓計對測量速度要求不高,而且149的RAM有2kb,所以選用該濾波方法。
2.3U盤讀寫文件格式問題
對U盤的讀寫分為兩類:把U盤當(dāng)作存儲器,按照文件格式讀寫U盤。前者讀寫速度快,操作簡單,但計算機(jī)不能直接讀取寫入的數(shù)據(jù);后者由于按照文件格式,計算機(jī)可以直接看到相應(yīng)的數(shù)據(jù)。公司子程序庫提供U盤文件操作的API,對于普通用戶可以直接調(diào)用這些API讀寫U盤,且可以與計算機(jī)無縫連接,但要求有600kb的RAM,若用51單片機(jī)則需要外擴(kuò)RAM。由于筆者熟悉430單片機(jī)且149有2kb的RAM,滿足要求,這也正是選用430單片機(jī)的一個原因。
3 結(jié)語
試驗證明,該裝置可以將采集到的數(shù)據(jù)成功地放到U盤中,因此可以應(yīng)用到實踐中去。
評論