SPI(氣壓計(jì)數(shù)據(jù)獲。
一、SPL06簡介 SPL06是歌爾公司最新推出新款氣壓傳感器,最新推出新款氣壓傳感器SPL06-001,歌爾是全球領(lǐng)先的MEMS廠家,SPL06利用歌爾多年積累的MEMS開發(fā)技術(shù),通過搭載高精度的檢測用MEMS(MicroElectroMechanicalSystems)即微機(jī)電系統(tǒng)和低功耗的集成電路,實(shí)現(xiàn)了業(yè)界最高級別別的精度±5cm,SPL06是一種具有高精度和低電流消耗的小型化的數(shù)字式氣壓傳感器,兼具壓力和溫度測量兩種特點(diǎn)。壓力傳感器元件基于電容傳感器原理,保證溫度變化過程中的高精度測量。小型封裝結(jié)構(gòu)適合移動應(yīng)用和可穿戴設(shè)備等。SPL06的內(nèi)部信號處理器將壓力和溫度傳感器元件的輸出轉(zhuǎn)換為24位數(shù)據(jù)。每個(gè)壓力傳感器已被單獨(dú)校準(zhǔn)并包含校準(zhǔn)系數(shù)。在應(yīng)用中使用系數(shù)將測量結(jié)果轉(zhuǎn)換成真實(shí)的壓力和溫度值。 二、氣壓計(jì)數(shù)據(jù)獲取實(shí)驗(yàn)氣壓計(jì)數(shù)據(jù)獲取實(shí)驗(yàn)使用STM32的硬件SPI與氣壓計(jì)SPL06相連接,串口1即UART1,通過USB轉(zhuǎn)串口模塊連接電腦,把SPI獲取到的SPL06的原始壓力值以及原始溫度值數(shù)據(jù)通過串口1傳輸?shù)诫娔X端的串口調(diào)試助手顯示出來。做該實(shí)驗(yàn)的時(shí)候需要把視覺模組暫時(shí)取下,并且把USB轉(zhuǎn)串口的線接到視覺模組接口處。氣壓計(jì)SPL06在無人機(jī)頂部的白色RGB彩燈盒里,通過軟排把SPI及供電口接出,如下圖所示。 根據(jù)原理圖,可以看到SPL06的的SPI接口分別是:PB15、PA5、PA6、PA7,如下圖所示。
串口1的配置可以參考《串口(基礎(chǔ)收發(fā)),配置代碼(通過調(diào)用官方庫)。 獲取SPL06的數(shù)據(jù)代碼編寫的思路如下: 1 | | 1、定義結(jié)構(gòu)體 2、使能時(shí)鐘 3、填充結(jié)構(gòu)體 4、裝載結(jié)構(gòu)體 | | | 1、定義結(jié)構(gòu)體 2、使能時(shí)鐘 3、填充結(jié)構(gòu)體 4、裝載結(jié)構(gòu)體 5、使能SPI | | | 1、讀一個(gè)字節(jié) 2、寫一個(gè)字節(jié) | | | 1、從傳感器讀 2、從傳感器寫 3、ICM20602初始化 |
SPI初始化代碼如下:
SPI的讀寫代碼如下。
SPL06的初始化代碼如下。 SPL06的讀寫代碼如下。
查看手冊發(fā)現(xiàn)壓力、溫度的24位原始值在地址0x00~0x05上。
讀取該寄存器數(shù)據(jù),并發(fā)送到串口上。代碼如下所示。
這里注意要把串口的發(fā)送也配置好,這樣才能把數(shù)據(jù)發(fā)送到電腦。串口1通過USB轉(zhuǎn)串口模塊接到電腦,保存、編譯、下載代碼,可以看到USB轉(zhuǎn)串口模塊在不斷地打印SPL06的3個(gè)字節(jié)原始壓力值數(shù)據(jù)以及3個(gè)字節(jié)的原始溫度數(shù)據(jù),數(shù)據(jù)如下圖所示:
完整的pdf格式文檔51黑下載地址:
2.飛控開發(fā)基礎(chǔ)-【7】SPI(氣壓計(jì)數(shù)據(jù)獲取).pdf
(1.05 MB, 下載次數(shù): 34)
2020-3-27 10:59 上傳
點(diǎn)擊文件名下載附件
|