基于MS5540C的微型氣壓傳感器的設計與研究
摘要:為實(shí)現提供氣壓和溫度參數的高穩定性和高準確性的測量,介紹了MS5540C的特性和工作原理,并給出了基于MS5540C的微型傳感器相關(guān)的硬件設計,提供了部分相關(guān)軟件函數的設計作參考,最后對測量結果的補償校準進(jìn)行了討論。試驗表明,該設計具有高穩定性和高準確性。
本文引用地址:http://dyxdggzs.com/article/160584.htm關(guān)鍵詞:MS5540C;氣壓;SPI;溫度;校準
在工業(yè)領(lǐng)域、科學(xué)研究中,尤其是戶(hù)外復雜的工作環(huán)境中,經(jīng)常需要高精度測量環(huán)境溫度、氣壓。但是傳統的專(zhuān)門(mén)的氣壓和溫度測量?jì)x器存在不便攜帶,精度不高的缺點(diǎn),另外工業(yè)控制環(huán)境和戶(hù)外惡劣環(huán)境下對氣壓和溫度測量?jì)x器的影響不可忽略,甚至有時(shí)會(huì )嚴重影響測量結果。電子測量?jì)x器的微型化合低功耗的發(fā)展趨勢,迫切需要具有高穩定性、高靈敏度、高分辨率、低功耗、寬溫度范圍的微型便攜式的氣壓和溫度測量?jì)x器的出現。MS5540C是瑞士Intersema公司推出的基于MEMS技術(shù)的數字壓力傳感器,在微型化低功耗高分辨率方面,以及高穩定性和可靠性方面具有獨特的優(yōu)勢。本文介紹了基于MS5540C的的微型氣壓傳感器的硬件和軟件相關(guān)設計以及數據補償等問(wèn)題。
1 MS5540C的特性和硬件電路的設計
MS5540C是SMD混合器件,集成包括精確壓阻式壓力傳感器,電阻式溫度傳感器,16位ADC和數字濾波器及SPI數字接口電路等,尺寸6.2 ×6.4 mm,工作溫度為-40~+85℃,工作電流僅為5μA,符合歐洲ROHS認證要求,廣泛應用于便攜式氣壓計高度計,天氣控制系統,GPS接收機等方面。
圖1是MS5540C的框圖結構。它具有引腳少接口簡(jiǎn)單的特點(diǎn)。MS5540C供電電壓為2.2~3.6 V,與處理器的通訊接口為SPI串行接口,另外還需要一個(gè)32.768 kHz的時(shí)鐘輸入到MCLK引腳。
MS5540C可以非常方便地連接到微處理器,特別是帶有SPI接口的處理器,不過(guò)微處理器也要選擇-40~85℃工作范圍的工業(yè)級MCU以適應復雜的野外環(huán)境。為了提高穩定性和可靠性,我們推薦如圖2所示的電路設計。
對于32.768 kHz的時(shí)鐘,不推薦使用晶體或MCU來(lái)提供,原因是這種晶體或MCU提高的時(shí)鐘在寬范圍溫度條件下并不能保證穩定。圖中使用工作范圍為-40~85℃的有源晶振。時(shí)鐘晶振的電源與MS5540C相同,并且需要1~10μF之間的濾波電容及1個(gè)0.01~0.1 nF之間的去耦電容,并且通過(guò)磁珠消除高頻噪聲。晶振輸出端最好加10~33 Ω的匹配電阻。M5540C的電源端必須認真處理,如圖2所示,通過(guò)增加磁珠消除高頻噪聲,1μF和0.01μF電容實(shí)現濾波和去耦。PCB布局時(shí),0.01μF電容盡量靠近VDD引腳。
MS5540C的SPI接口與MCU的連接如圖2所示,DIN和DOUT加10 kΩ的上拉電阻,并且在靠近MS5540C的SCLK端加一個(gè)15 pF的高頻濾波電容,這對于野外惡劣環(huán)境下消除干擾非常有效。
M5540C是超低功耗器件,采樣轉換期間的功耗也僅為1 mA。
2 MS5540C的程序設計
2.1 MS5540C的工作原理
MS5540C包括一個(gè)壓阻式的傳感器和傳感器接口電路。它的主要功能是將壓力傳感器輸出的未補償的模擬電壓轉換成16位數字值,通過(guò)接口電路可以將16位數字值輸出。共有2個(gè)16位數字值需要輸出,分別是用于氣壓和溫度測量結果計算的D1和D2。這兩個(gè)16位數據結果是非常粗糙的,必須通過(guò)外部處理器進(jìn)行補償計算,才能得到比較精確的結果。
每個(gè)模塊都會(huì )在兩個(gè)溫度和兩個(gè)氣壓值下進(jìn)行工廠(chǎng)校準,得到6個(gè)補償系數C1~C6,這6個(gè)補償系數共64 bit,以4個(gè)16 bit的字形式儲存在模塊內的PROM中。因此,在進(jìn)行補償計算前,必須先讀出這6個(gè)補償系數。關(guān)于補償系數在4個(gè)16位字中的排列方式,請參看文獻的圖4。
2.2 MS5540C的軟件設計
使用帶有SPI接口的MCU與MS5540C接口,將會(huì )使程序設計變得簡(jiǎn)單。我們以帶有SPI接口的51單片機STCl2LE5A60S2為例來(lái)介紹MS5540C的軟件編程。
由前所述,4個(gè)16位的補償數據及2個(gè)分別為氣壓和溫度傳感器轉換而來(lái)的16位結果數據都需要通過(guò)SPI來(lái)讀取。關(guān)于這些數據的讀取,Intersema規定了一套簡(jiǎn)單的通訊協(xié)議,協(xié)議要求處理要先發(fā)命令數據,然后才能讀取16位數據。命令數據包括起始位,設置位和停止位,各個(gè)數據有不同的設置位,另外為了復位MS5540C,Intersema還提供了一個(gè)用于reset模塊的命令,關(guān)于具體的通訊協(xié)議,請參考文獻。
評論