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