基于MCU的氣壓高度表設(shè)計(jì)
如圖3為EL(背光片)驅(qū)動(dòng)電路,應(yīng)用SP4403MSOP-8封裝,電路圖中的電感量與電容可根據(jù)EL(背光片)大小調(diào)整在功耗和亮度之間取得平衡。通過(guò)MCU I/O P9.0控制一開(kāi)關(guān)管使其正極電源在所需時(shí)接通,一般持續(xù)點(diǎn)亮約3 s為省電。
3 系統(tǒng)軟件設(shè)計(jì)
整體軟件設(shè)計(jì)采用匯編與高級(jí)C語(yǔ)言。其包含有時(shí)鐘顯示、按鍵功能、溫度、高度、背光及提示音響鬧等軟件模塊。初始化程序包括MCU,I/O接口狀態(tài)設(shè)置、LCD驅(qū)動(dòng)、時(shí)鐘、氣壓傳感器初始化等。正常顯示在時(shí)鐘模式,Mode為功能選擇鍵,Set為每一具體功能設(shè)置鍵,通過(guò)Up,Down鍵可進(jìn)行具體數(shù)值快速設(shè)置,El為背光按鍵。
當(dāng)按鍵Mode選擇進(jìn)入高度模式時(shí),默認(rèn)值為超低功耗模式,由于每種模式的數(shù)據(jù)讀取頻率不同,因此也可根據(jù)實(shí)際情形轉(zhuǎn)換高分辨率與高速測(cè)量模式。并可通過(guò)氣壓傳感器3種數(shù)據(jù)讀取頻率模式轉(zhuǎn)換可間接選擇測(cè)量精確度。DRDY-PIN對(duì)MCU PB.0發(fā)出數(shù)據(jù)準(zhǔn)備請(qǐng)求中斷,此時(shí)Status寄存器Bit5變?yōu)?,讀取寄存器Datard8與Datard16共19位有效氣壓數(shù)據(jù)。得到的十進(jìn)制的原始數(shù)據(jù)需根據(jù)下式轉(zhuǎn)換為氣壓?jiǎn)挝皇荘a數(shù)據(jù)值
Pres[Pa]=0.25×Pres[dec] (1)
其中,Pres[dec]是十進(jìn)制的原始數(shù)據(jù)。得到的氣壓數(shù)據(jù)由于SCP1000-D11氣壓傳感器內(nèi)含溫度補(bǔ)償,不作修正。因此可根據(jù)式(2)換算為當(dāng)前氣壓下的高度
當(dāng)起步所處參考位置較低時(shí),此時(shí)式中Pa=101.324 kPa是標(biāo)準(zhǔn)海平面的大氣壓,對(duì)應(yīng)的氣壓高度Ha為0;R為空氣氣體常數(shù),R=287.052 78 m2/(K·s2);g=9.80 665 m/s2為標(biāo)準(zhǔn)海平面的重力加速度;β=-0.006 5 K/m為溫度垂直變化率Ta=273.16K為標(biāo)準(zhǔn)海平面的溫度。 Pb是所處位置氣壓。如能了解參考點(diǎn)的真實(shí)標(biāo)高則可直接設(shè)置Ha,可避免高海拔時(shí)由于當(dāng)?shù)睾F矫娴臍鈮号c溫度有較大浮動(dòng)時(shí)而引起的原理性誤差。
經(jīng)過(guò)實(shí)際登山測(cè)試,絕對(duì)高度誤差可達(dá)到±10 m,240 mA/3 V的紐扣電池最少可使用一年。
評(píng)論