第1步:零件
讓我們把零件組合在一起:
一個arduino (克隆版本為10-15美元),盡管您可以使用任何想要的arduino,但我使用的是mega。當然,可以在將來的項目中替換微控制器。
BMP180傳感器(1-2 $)測量氣壓并具有嵌入式溫度傳感器。
一些跨接電纜(這些電纜已經在家里使用了,雖然我不得不以2-3美元(我認為一包60條)買了一些,但不必購買。) 。
這就是您所需要的,現在讓我們連接一切。
步驟2:連接
請記住BMP180使用3.3V,如果您將傳感器連接到5V,則將被快速破壞。確保在整個連接部分中斷開電源線。
按以下方式連接電線:
VIN(或VCC)-》 Arduino 3.3V
GND-》 GND
SCL-》 SCL
SDA-》 SDA
接下來讓我給你我的代碼:
第3步:代碼
此傳感器的代碼非常簡單,盡管您將需要一個庫來獲取值。
繼續并導航至此處,以便從adafruit下載該庫。我使用的代碼如下:
(我已經將此代碼編譯并上傳到了arduino上,并且效果很好。)謝謝您的閱讀!
#include //Including wire library
#include //Including BMP180 library
#define ALTITUDE 35.6 //Altitude where I live (change this to your altitude)
SFE_BMP180 pressure; //Creating an object
void setup() {
Serial.begin(9600); //Starting serial communication
Serial.println(“Program started”);
if (pressure.begin()) //If initialization was successful, continue
Serial.println(“BMP180 init success”);
else //Else, stop code forever
{
Serial.println(“BMP180 init fail”);
while (1);
}
}
void loop() {
char status;
double T, P, p0; //Creating variables for temp, pressure and relative pressure
Serial.print(“You provided altitude: ”);
Serial.print(ALTITUDE, 0);
Serial.println(“ meters”);
status = pressure.startTemperature();
if (status != 0) {
delay(status);
status = pressure.getTemperature(T);
if (status != 0) {
Serial.print(“Temp: ”);
Serial.print(T, 1);
Serial.println(“ deg C”);
status = pressure.startPressure(3);
if (status != 0) {
delay(status);
status = pressure.getPressure(P, T);
if (status != 0) {
Serial.print(“Pressure measurement: ”);
Serial.print(P);
Serial.println(“ hPa (Pressure measured using temperature)”);
p0 = pressure.sealevel(P, ALTITUDE);
Serial.print(“Relative (sea-level) pressure: ”);
Serial.print(p0);
Serial.println(“hPa”);
}
}
}
}
delay(1000);
}
-
監視器
+關注
關注
1文章
780瀏覽量
33104 -
Arduino
+關注
關注
187文章
6464瀏覽量
186681 -
bmp180
+關注
關注
2文章
7瀏覽量
11517
發布評論請先 登錄
相關推薦
評論