1 #include <Wire.h> 2 #include <SPI.h> 3 #include <Adafruit_Sensor.h> //导入库 4 #include <Adafruit_BMP280.h> 5 //SPI 6 #define BMP_SCK 13 //硬件连接,不需要改动 7 #define BMP_MISO 12 8 #define BMP_MOSI 11 9 #define BMP_CS 10 10 //Adafruit_BMP280 bmp; // I2C 11 Adafruit_BMP280 bmp(BMP_CS); // hardware SPI 12 //Adafruit_BMP280 bmp(BMP_CS, BMP_MOSI, BMP_MISO, BMP_SCK); //选择此模式 13 int MICsensorPin = A0; // 选择传感器链接的模拟接口 14 int MsensorValue = 0; // 设置传感器初始值 15 int LUXsensorPin = A1; // 选择传感器链接的模拟接口 16 int LsensorValue = 0; // 设置传感器初始值 17 float BMPsensorTemp = 0; 18 float BMPsensorPressure = 0; 19 float BMPsensorAltitude = 0; 20 void setup () 21 { 22 Serial.begin (9600);//初始化串口,设置波特率 23 Serial.println(F("BMP280 初始化...")); 24 if (!bmp.begin()) { 25 Serial.println(F("Error:找不到BMP280/SPI/3.3V传感器")); 26 while (1); 27 } 28 } 29 30 void loop () 31 { 32 MsensorValue = analogRead (MICsensorPin);//读取模拟接口返回的传感器数值 33 LsensorValue = analogRead (LUXsensorPin);//读取模拟接口返回的传感器数值 34 float BMPsensorTemp = bmp.readTemperature(); 35 float BMPsensorPressure = bmp.readPressure()/1000; 36 float BMPsensorAltitude = bmp.readAltitude(1013.25); 37 delay (1000);//延时1秒 38 Serial.print(F("声音:")); 39 Serial.print (MsensorValue,DEC);//10进制打印传感器数值 40 Serial.println(" dB"); 41 Serial.print(F("光照:")); 42 Serial.print (LsensorValue,DEC);//10进制打印传感器数值 43 Serial.println(" Lux"); 44 Serial.print(F("温度: ")); 45 Serial.print(BMPsensorTemp);//打印传感器数值 46 Serial.println("°C"); 47 Serial.print(F("气压:")); 48 Serial.print(BMPsensorPressure);//打印传感器数值 49 Serial.println(" KPa"); 50 Serial.print(F("海拔: ")); 51 Serial.print(BMPsensorAltitude); //这应该根据你当地的情况来调整 52 Serial.println(" m"); 53 }
相关文章:
- Arduino--火焰传感器 2022-02-06
- 多传感器融合(三) 2021-09-17
- Arduino传感器学习目录 2021-11-18
- Arduino I2C + 气压传感器LPS25H 2021-09-19
- 利用arduino nano开发板配合oled、温度传感器、光照传感器、湿度传感器设计一个花盆 2021-08-15
- 多传感器融合(一) 2021-08-07