LEONARDをメインボード、SSD1306をディスプレイとして、気圧、気温データを表示。
出力データは、USBで出力するシリアルデータ以外、以下の8項目をOLEDに表示
気圧表示前に、測定位置の高度を設定する必要があるので、以下の部分を修正する。
#define ALTITUDE 26.0 // 測定位置の高度設定 (メートル)
1.. 気温 摂氏(deg C)、華氏((9.0/5.0)*T+32.0,2 deg C)
2.. 絶対圧力(hPa)、水銀柱インチ(inHg)圧力✕0.0295333727で換算
3.. 相対圧力(hPa:海面圧力)、水銀柱インチ(inHg)圧力✕0.0295333727で換算
4.. 高度: 測定高度(メートルと、フィート表示)
撮影画像は、絶対圧力(ABS、hPa)を表示中
ディスプレイの解像度は、ワンコインで隠れてしまう、128✕32。
表示はそれなりに工夫をしたつもりでも、あくまで個人の主観。
シリアル出力では、mb 表示だが、OLED側は hPa ( mb = hPa )
表示切り替えは、物理的なスイッチではなく、時間による切り替え。
ソース内の、WSDLリンク:
自己責任で...
Libraryを必要に応じて揃える必要があり、今回はSSD1306対象のLibraryを含めた以下の5つ
SFE_BMP180.h
Wire.h
Adafruit_GFX.h
Adafruit_SSD1306.h
Adafruit_BMP085.h
Any Arduino pins labeled: SDA SCL
Uno, Redboard, Pro: A4 A5
Mega2560, Due: 20 21
Leonardo: 2 3 ....
添付ファイル
|