在線客服
銷售-譚小姐13672863149
銷售-陳小姐13536007805
銷售-黃小姐13426882603
銷售:張先生13822460808
(微信同號)
|
MS5805壓力傳感器如何通過代碼實現(xiàn)溫度和壓力值讀???
專欄:技術(shù)支持
發(fā)布日期:2022-12-07
閱讀量:1322
作者:
收藏:
MS5805是一款由TE推出的可以測量周圍環(huán)境的溫度以及壓力的高精度傳感器方案,室溫下,溫度誤差為+/-1℃,內(nèi)部具有24bit ADC,最高壓力精度為0.02mbar,采用標(biāo)準(zhǔn)I2C通信,硬件設(shè)計簡單。
MS5805是一款由TE推出的可以測量周圍環(huán)境的溫度以及壓力的高精度傳感器方案,室溫下,溫度誤差為+/-1℃,內(nèi)部具有24bit ADC,最高壓力精度為0.02mbar,采用標(biāo)準(zhǔn)I2C通信,硬件設(shè)計簡單。本文主要介紹MS5805壓力傳感器的溫度和壓力值的讀取,方便工程師在軟件開發(fā)的時候,可以快速的了解MS5805的軟件代碼實現(xiàn)的過程,更加容易的應(yīng)用MS5805壓力傳感器。 下面開始介紹MS5805的溫度以及壓力值讀取步驟: 一、首先,MS5805是標(biāo)準(zhǔn)I2C通信,它的器件地址為0xEC (與有些器件的0xA0不一樣,需要注意)。 二、按照數(shù)據(jù)手冊所示讀取步驟:
1)發(fā)送RESET命令,向地址0xEC發(fā)送命令0x1E 2)等待重啟完成,延時等待大約1ms,此步驟非常重要,如果等待的時間不足,會導(dǎo) 致校準(zhǔn)值的第一個數(shù)據(jù)不準(zhǔn)確。 3)發(fā)送讀取校準(zhǔn)值命令,向地址0xEC發(fā)送0x40+2ch,讀取內(nèi)部校準(zhǔn)值,有7個,C0-C6, 其中C0是內(nèi)部校準(zhǔn)值的CRC校驗,為出廠時寫入的可讀值。 三、發(fā)送溫度轉(zhuǎn)換命令0x5A,然后等待,大約10us,向地址0xEC發(fā)送命令0x00讀取溫度的24bit ADC值。 四、發(fā)送壓力轉(zhuǎn)換命令0x4A,然后等待,大約10us,向地址0xEC發(fā)送命令0x00讀取壓力的24bit ADC值。 五、根據(jù)公式計算溫度: dT = D2 - T REF = D2 - C5 * 2^8; TEMP = 20°C+dT*TEMPSENS = 2000+dT*C6/2^23 六、根據(jù)公式計算壓力值: OFF = C2*2 17+(C4*dT )/2^6; SENS = C1 * 2 16+( C3*dT )/2^7; P = D1 * SENS - OFF = (D1 * SENS / 2 21 - OFF) / 2^15 通過以上步驟,我們就可以精確地讀出周圍環(huán)境的溫度值以及壓力值了。 |