前言
隨著單片機功能集成化的發(fā)展,其應(yīng)用領(lǐng)域逐漸由傳統(tǒng)的,、單一的控制處理擴展到控制處理,、數(shù)據(jù)處理以及數(shù)字信號處理等領(lǐng)域。凌陽16位單片機就是適應(yīng)這種發(fā)展而設(shè)計的,,并以其出色的語音處理能力成為越來越多單片機用戶選擇的對象,。
系統(tǒng)硬件設(shè)計
系統(tǒng)以單片機為核心,配置了各種集成傳感器,,體積小巧,。由于采用了微型封裝的芯片及元器件,使連線變短,,減少了通信接口,,從而提高了整機工作的可靠性。系統(tǒng)硬件結(jié)構(gòu)如圖1所示,。
SPCE061A單片機
SPCE061A 是凌陽科技公司,?’nSPTM (Microcontroller And Signal Processor) 系列產(chǎn)品中的16位微控制器芯片, 內(nèi)置32k閃存,, 其較高的處理速度使芯片能夠非常容易,、快速地處理復(fù)雜的數(shù)字信號, 適用于數(shù)字語音識別等應(yīng)用領(lǐng)域,。
圖1 系統(tǒng)硬件結(jié)構(gòu)框圖
DS18B20溫度傳感器
DS18B20溫度傳感器采用12位存儲溫度值對應(yīng)的數(shù)字表示形式,,理論精度可達到0.05℃ ,能實時,、精確地檢測到人體溫度的變化,,可通過單片機在液晶顯示器上顯示溫度。
DS18B20與單片機的典型接口設(shè)計
可以采用外接電源與寄生電源(即從數(shù)據(jù)線上得到供電電源)兩種方式供電,,如圖2所示,。
使用DS18B20的注意事項
(1)DS18B20從測溫結(jié)束到將溫度值轉(zhuǎn)換成數(shù)字量需要一定的轉(zhuǎn)換時間,,這是必須保證的,,不然會導致轉(zhuǎn)換錯誤,使溫度輸出總是顯示85℃,。
?。?)在實際使用中發(fā)現(xiàn),應(yīng)使電源電壓保持在5V左右,,若電源電壓過低,,會使所測得的溫度與實際溫度出現(xiàn)偏高現(xiàn)象,,經(jīng)過試驗發(fā)現(xiàn),一般在5V左右,。
?。?)較小的硬件開銷需要相對復(fù)雜的軟件進行補償,由于DS18B20與單片機間采用串行方式傳送數(shù)據(jù),,因此,,在對DS18B20進行讀寫編程時,必須嚴格保證讀寫時序,,否則將無法讀取測溫結(jié)果,。
(4)在DS18B20測溫程序設(shè)計中,,向DS18B20發(fā)出溫度轉(zhuǎn)換命令后,,程序總要等待DS18B20的返回信號,一旦DS18B20接觸不好或斷線,,當程序讀該DS18B20時,,將沒有返回信號,程序進入死循環(huán),,這一點在進行DS18B20硬件連接和軟件設(shè)計時也要給予一定的重視,。
ZD-3微震動傳感器
ZD-3微震動傳感器是一種有源的高靈敏度微功耗檢測元件,以正弦波形式輸出,,可利用74LS14施密特觸發(fā)器將其轉(zhuǎn)換成脈沖波,,輸入單片機檢測高電平,能實時記錄跑步者或鍛煉者的步數(shù),,進而得到鍛煉者的能量損耗,,以利于更有效地進行鍛煉。
HK-2000A脈搏檢測傳感器
該產(chǎn)品采用高度集成化工藝將力敏元件(PVDF壓電膜),、靈敏度溫度補償元件,、感溫元件、信號調(diào)理電路電路集成在傳感器內(nèi),。脈搏波動一次輸出一正脈沖,。該產(chǎn)品用于脈率檢測,主要用于運動,、健身器材中的心率測試,。
OCM4X8C液晶顯示模塊
OCM4X8C液晶顯示模塊采用128×64點陣的漢字圖形液晶顯示模塊,可顯示漢字及圖形,,內(nèi)置國標GB2312碼簡體中文字庫(16×16點陣),、128個字符(8×16點陣)及64×256點陣的GDRAM繪圖區(qū)域??膳cCPU直接接口,,提供8位并行及串行連接方式連接微處理器。模塊提供用戶最簡單液晶應(yīng)用上的方案,,用一條指令,,即可實現(xiàn)包括漢字、圖片,、英文字母及特大,、特小數(shù)字等在液晶屏幕上任意點開始顯示,任意指定區(qū)域閃爍,,移動,、反顯等原本需要用戶花費大量時間精力去編程實現(xiàn)的功能。使得用戶在CPU選型時,,對程序存儲空間的要求大幅降低,。同時,模塊自帶的溫度補償及省電功能,,(微安級),,對低功耗或高低溫顯示效果有要求的用戶,如手持終端,、電力設(shè)備等,,是絕佳的選擇對象。
; 圖 2 寄生電源供電 報警模塊
呼吸氣流溫度檢測模塊
為了減少熱惰性帶來的誤差,,準確地測量呼吸氣流溫度的變化,,要求熱敏元件熱容量越小越好,其位置位于呼吸道中氣流速度最大的地方,。因此,,在電路中選用BLTS101 PN結(jié)溫度傳感器(熱響應(yīng)時間τ<0.2s)。恒流源向PN結(jié)提供100μA的恒定正向電流,,則PN結(jié)的正向壓降僅隨溫度T的變化而變化,,該電壓信號由前置放大器放大后,通過一個4.84Hz低通濾波器,,再變換為數(shù)字信號送入單片機,。
系統(tǒng)軟件設(shè)計
軟件設(shè)計采用模塊化結(jié)
構(gòu)和菜單操作。利用C61(類似于C語言的凌陽單片機編程語言)及匯編語言編寫軟件,,在液晶顯示屏上實時顯示各種生理參數(shù)數(shù)據(jù),,數(shù)據(jù)存儲采用Flash, 這樣,,在更換儀器電池時不會丟失數(shù)據(jù),。所有測量參數(shù)均可設(shè)定上、下報警閾值,,當任一參數(shù)超過閾值時都能發(fā)出聲,、光報警,。根據(jù)設(shè)計的需要,可以利用消聲鍵停止報警,。由于呼吸阻抗信號具有基線漂移現(xiàn)象,,因此,在軟件設(shè)計中采用一種變化中值檢測法對基線進行校正,,具體方法是把上一次呼吸周期內(nèi)的中值點作為本次呼吸周期的檢測點,,這樣即可克服在正常檢測電壓范圍內(nèi)的基線漂移現(xiàn)象所帶來的漏檢情況。
數(shù)據(jù)采集部分
生理參數(shù)的實時數(shù)據(jù)采集主要通過傳感器進行,。在測量人體溫度時,,由于體溫在鍛煉時的變化比較緩慢,因此,,主要運用軟件定時中斷的方法進行檢測,。在檢測步數(shù)和脈搏等參數(shù)時,主要記錄的是頻率,,只需采用軟件計數(shù)就可以,,根據(jù)檢測到的高電平,計數(shù)器進行自加運算,,從而記錄頻率,。
參數(shù)閾值設(shè)定
由于正常情況下人體溫度在36.5℃左右。因此,,設(shè)定溫度閾值的初值為36.5℃,,以0.25℃為步進量,可以用上下鍵增減,,每按一次按鍵,,就遞增或遞減0.25℃,直到達到鍛煉者想要設(shè)定的閾值為止(在35℃~42℃之間),。
液晶驅(qū)動程序設(shè)計
系統(tǒng)顯示功能的實現(xiàn),,實際上就是對OCM4X8C液晶顯示模塊的驅(qū)動編程。本文按照結(jié)構(gòu)化的編程思想,,利用C61語言將上翻,、下翻、返回和確定等按鍵功能編成子函數(shù),,這樣便于主程序的調(diào)用,。限于篇幅,液晶驅(qū)動程序不在此詳述,。
結(jié)語
本方案的研究成功讓人們更加方便的在自己的家里鍛煉,,同時還可以實施無線傳輸,讓老人和病人在家里或醫(yī)院里更加安全,讓家人更加放心,。