免費(fèi)下載!
[!--downpath--]37款傳感與模塊的提法,在網(wǎng)路上廣泛留傳,雖然就能兼容的傳感模塊肯定是不止37種的。鑒于本人手頭積累了一些傳感和執(zhí)行器模塊,根據(jù)實(shí)踐出真知(一定要?jiǎng)邮肿觯┑睦砟睿詫W(xué)習(xí)和交流為目的,這兒打算逐一動手試試多做實(shí)驗(yàn)大氣壓強(qiáng)傳感器的好處,不管成功與否,還會記錄出來——小小的進(jìn)步或是搞不掂的問題,希望還能拋磚引玉。
【】168種傳感模塊系列實(shí)驗(yàn)(資料代碼+仿真編程+圖形編程)
實(shí)驗(yàn)二十七:AHT20+溫溫度氣壓模塊高精度數(shù)字型溫溫度大氣浮力傳感
大氣浮力傳感模塊的實(shí)驗(yàn)環(huán)境
一、大氣浮力傳感模塊實(shí)驗(yàn)所需硬件清單
四位數(shù)碼管X1
0.96寸OLED液晶屏X1
Uno開發(fā)板X1
杜邦線若干(備了9條)
高電平觸發(fā)有源蜂鳴器模塊X1
大氣浮力傳感模塊X2
LED發(fā)光晶閘管(綠、藍(lán)色)X2
IIC/I2C1602LCD液晶屏模塊X1
高電平觸發(fā)單路5V熔斷器模塊X1
Proto原型擴(kuò)易拉寶(帶mini蛋糕板)X1
二、傳感器模塊實(shí)驗(yàn)所需軟件平臺
代碼編程IDE(版本1.8.19)
仿真編程(版本V4.6.3)
圖形編程Mind+(版本V1.7.0RC2.0)
以及編玩邊學(xué)(線上平臺)
三、搜索和安裝“”庫
1、打開IDE——工具——管理庫,搜索并安裝“”
2、打開,搜索并下載安裝“”
下載鏈接:
四、實(shí)驗(yàn)接線示意圖
1、SPI接法
Unopin…
D13SCK(Clock,from)…SCL
D12MISO(INSlaveOUT)…SDO
D11MOSI(OUTSlaveIN)…SDA
D10SSn(Slave)…CSB
2、I2C接法
VCC>VCC(3.3V)
GND>GND
SCL>A5
SDA>A4
五、實(shí)驗(yàn)接線的說明
將電源引腳Vcc和GND聯(lián)接到電路的3.3伏和接地。如今,須要選擇數(shù)字插口。對于I2C,將片選引腳(CSB)聯(lián)接到Vcc,否則將其接地或保持懸空狀態(tài)。設(shè)置I2C地址。假如要設(shè)置0x77地址,請將SDO引腳聯(lián)接到Vcc。要設(shè)置0x76地址,請保持引腳懸空。該模塊不包含任何板載電流調(diào)節(jié)器或電平轉(zhuǎn)換器。為此大氣壓強(qiáng)傳感器的好處,要將其聯(lián)接到工作電流為5V或3.3V以外的任何電流的設(shè)備,則須要一個(gè)電平轉(zhuǎn)換器和電流調(diào)節(jié)器。
大氣浮力傳感模塊的幾個(gè)實(shí)驗(yàn)
1、程序一:測試,并口復(fù)印氣溫、氣壓與海拔
(1)參考開源代碼
/*
【Arduino】168種傳感器模塊系列實(shí)驗(yàn)(資料代碼+仿真編程+圖形編程)
程序一:BMP280 測試,串口打印溫度、氣壓與海拔
*/
#include //導(dǎo)入驅(qū)動庫
#include
#include
#include
#define BMP_SCK 13 //引腳 SPI 接法
#define BMP_MISO 12
#define BMP_MOSI 11
#define BMP_CS 10
//定義BMP280引腳
Adafruit_BMP280 bmp(BMP_CS, BMP_MOSI, BMP_MISO, BMP_SCK);
void setup() {
Serial.begin(9600);//初始化串口
Serial.println(F("BMP280 測試"));
if (!bmp.begin()) {
Serial.println(F("找不到對應(yīng)的傳感器"));
while (1);
}
}
void loop() {
Serial.print(F("溫度 = "));//串口打印溫度
Serial.print(bmp.readTemperature());
Serial.println(" *C");
Serial.print(F("氣壓 = "));//串口打印氣壓
Serial.print(bmp.readPressure());
Serial.println(" Pa");
Serial.print(F("海拔 = "));//串口打印海拔
Serial.print(bmp.readAltitude(1013.25));
Serial.println(" m");
Serial.println();
delay(2000);//延時(shí)2秒
}
(2)實(shí)驗(yàn)并口返回情況
(3)實(shí)驗(yàn)場景圖
2、程序二:-氣壓-壓力傳感模塊測試
(1)參考開源代碼
/*
【Arduino】168種傳感器模塊系列實(shí)驗(yàn)(資料代碼+仿真編程+圖形編程)
程序二:BMP280-氣壓-壓力傳感器模塊測試
*/
#include
#include
#include //導(dǎo)入驅(qū)動庫
#define BMP_SCK (13)//定義SPI接腳
#define BMP_MISO (12)
#define BMP_MOSI (11)
#define BMP_CS (10)
//Adafruit_BMP280 bmp; // I2C
Adafruit_BMP280 bmp(BMP_CS); //硬件SPI
//Adafruit_BMP280 bmp(BMP_CS, BMP_MOSI, BMP_MISO, BMP_SCK);
void setup() {
Serial.begin(9600);
Serial.println(F("BMP280 test"));
if (!bmp.begin()) {
Serial.println(F("Could not find a valid BMP280 sensor, check wiring!"));
while (1);
}
//數(shù)據(jù)表中的默認(rèn)設(shè)置
bmp.setSampling(Adafruit_BMP280::MODE_NORMAL, //操作模式
Adafruit_BMP280::SAMPLING_X2, //溫度采樣
Adafruit_BMP280::SAMPLING_X16, //壓力采樣
Adafruit_BMP280::FILTER_X16, //過濾
Adafruit_BMP280::STANDBY_MS_500); //待機(jī)時(shí)間
}
void loop() {
Serial.print(F("Temperature = "));
Serial.print(bmp.readTemperature());
Serial.println(" *C");
Serial.print(F("Pressure = "));
Serial.print(bmp.readPressure());
Serial.println(" Pa");
Serial.print(F("altitude = "));
Serial.print(bmp.readAltitude(1020.25)); //調(diào)整為當(dāng)?shù)仡A(yù)測
Serial.println(" m");
Serial.println();
delay(2000);
}
(2)實(shí)驗(yàn)并口返回情況
3、程序三:測試,顯示氣溫、氣壓與海拔
(1)實(shí)驗(yàn)開源圖形編程(Mind+、編玩邊學(xué))
(2)實(shí)驗(yàn)并口返回情況