BMP180 搭載のモジュールを ebay で買ってみたので試しました。約$2。どの気圧計にしろ温度計が必要で内部補正には使われていたりしますがだいたい内部用で外から値がとれません。このモジュールは温度もI2C経由で測れて一石二鳥モジュールです。
こんな感じのモジュールで、BMP180 以外に実装があります。これは 3.3V レギュレータで、5V 供給しても大丈夫なようになっています。(I2C のロジックレベル変換は簡易的ですが)。なので 5V の Arduino でも使えます。
BMP085 というものと互換性があるみたいで (BMP085はディスコン) それ用のライブラリがそのまま使えます。
#include <Arduino.h>
#include <Wire.h>
#include <Adafruit_BMP085.h>
// https://github.com/adafruit/Adafruit-BMP085-Library
Adafruit_BMP085 bmp;
void setup() {
Serial.begin(9600);
int ok = bmp.begin();
if (!ok) {
Serial.println("bmp.begin() failed.");
for (;;);
}
}
void loop() {
Serial.print("Temperature = ");
Serial.print(bmp.readTemperature());
Serial.println(" *C");
Serial.print("Pressure = ");
Serial.print(bmp.readPressure() / 100.0);
Serial.println(" hPa");
Serial.println();
delay(1000);
}
Temperature = 19.40 *C Pressure = 1011.48 Pa Temperature = 19.40 *C Pressure = 1011.47 Pa