本文主要是介绍arduino控制bmp180气压传感器,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
一、实物连接
二、代码实现
#include <SFE_BMP180.h>
#include <Wire.h>//need to create an SFE_BMP180 object, here called "pressure":
SFE_BMP180 pressure;void setup()
{Serial.begin(9600); //initialize the serial monitorSerial.println("REBOOT");//ptint "REBOOT"// Initialize the sensor (it is important to get calibration values stored on the device).if (pressure.begin())Serial.println("BMP180 init success");else{// Oops, something went wrong, this is usually a connection problem,// see the comments at the top of this sketch for the proper connections.Serial.println("BMP180 init fail\n\n");while(1); // Pause forever.}
}void loop()
{char status;double T,P,p0,a;status = pressure.startTemperature();if (status != 0){// Wait for the measurement to complete:delay(status);status = pressure.getTemperature(T);if (status != 0){// Print out the measurement:Serial.print("temperature: ");Serial.print(T,2);Serial.println(" deg C ");float tempF = 1.8*T + 32.0; // convert °C to °FSerial.print(" ");Serial.print(tempF,2);Serial.println(" deg F ");Serial.println(" "); // skip a linestatus = pressure.startPressure(3);if (status != 0){// Wait for the measurement to complete:delay(status);status = pressure.getPressure(P,T);if (status != 0){// Print out the measurement:Serial.print("pressure: ");Serial.print(P,2);Serial.println(" mb ");Serial.print(" ");Serial.print(P*0.0295301,2); //To convert millibars to inches of mercurySerial.print(" inches ");Serial.println(" "); //Serial.println(" "); // skipping 3 lines for easier readingSerial.println(" "); //}else Serial.println("error retrieving pressure measurement\n");}else Serial.println("error starting pressure measurement\n");}else Serial.println("error retrieving temperature measurement\n");}else Serial.println("error starting temperature measurement\n");delay(1000); // Pause for 5 seconds.
}
xt
这篇关于arduino控制bmp180气压传感器的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!