////// | |
// Code based on Sparkfun SFE_BMP180 library example | |
// Testing stretch prototype sensor | |
////// | |
/* SFE_BMP180 library example sketch | |
https://www.sparkfun.com/products/11824 | |
Hardware connections: | |
- (GND) to GND | |
+ (VDD) to 3.3V | |
(WARNING: do not connect + to 5V or the sensor will be damaged!) | |
You will also need to connect the I2C pins (SCL and SDA) to your | |
Arduino. The pins are different on different Arduinos: | |
Any Arduino pins labeled: SDA SCL | |
Uno, Redboard, Pro: A4 A5 | |
Mega2560, Due: 20 21 | |
Leonardo: 2 3 | |
V10 Mike Grusin, SparkFun Electronics 10/24/2013 | |
V1.1.2 Updates for Arduino 1.6.4 5/2015 | |
*/ | |
#include <SFE_BMP180.h> | |
#include <Wire.h> | |
// You will need to create an SFE_BMP180 object, here called "pressure": | |
SFE_BMP180 pressure; | |
int delayTime=100; | |
#define ALTITUDE 1655.0 // Altitude of SparkFun's HQ in Boulder, CO. in meters | |
void setup() | |
{ | |
Serial.begin(9600); | |
Serial.println("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) | |
{ | |
delay(status); | |
status = pressure.getTemperature(T); | |
if (status != 0) | |
{ | |
status = pressure.startPressure(3); | |
if (status != 0) | |
{ | |
// Wait for the measurement to complete: | |
delay(status); | |
status = pressure.getPressure(P,T); | |
if (status != 0) | |
{ | |
Serial.println(P,3); | |
} | |
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(delayTime); // Pause for 5 seconds. | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment