(25)トラ技mbedで温湿度気圧計(BME280ライブラリ)
.
(25)BME280(BME280 library)
概要
- BME280用の制御ライブラリです。
- 2つの付録基板を活用します。
- トランジスタ技術2014年2月号の付録基板(実験基板)
- トランジスタ技術2014年3月号の付録基板(トラ技mbed)
- 実験基板は表示機として使用します。LPC810は外しておきます。
- 準備としてハンダジャンパーをI2C設定します。
- J1=オープン
- J2=オープン
- J3=ショート
仕様(spec.)
- BME280は温湿度気圧センサーです。
- 湿度測定範囲:0%から100%
- 湿度精度:±3%
- 湿度データ:16ビット
- 16ビットデータを計算すると湿度になります。
- 気圧測定範囲:300hPaから1100hPa
- 気圧精度:±1hPa
- 気圧データ:20ビット
- 20ビットデータを計算すると気圧になります。
- 温度測定範囲:-40℃から85℃
- 温度精度:±1℃
- 温度データ:20ビット
- 20ビットデータを計算すると温度になります。
- I2Cアドレス(7ビット)は0x76(プログラム上の表記は0xEC)
BME280メンバー関数
関数名 | 用途 | 引数 | 戻り値 |
BME280 bme280(P0_5, P0_4) | インスタンス生成 | SDA, SCL | - |
BME280 bme280(i2c) | インスタンス生成 | i2c | - |
bme280.humidity() | 湿度データ | void | unsigned int |
bme280.temperature() | 温度データ | void | signed int |
bme280.pressure() | 気圧データ | void | unsigned int |
- インスタンス生成はどちらかの方法で行います。i2cを継承することもできます。
- 湿度データ、気圧データ、温度データはあえて32ビットデータを取得するようにしています。
- 浮動小数点を扱えないマイコンへの移植が困難になるからです。
- 湿度データと気圧データは温度補正されます。
- そのため、ライブラリ内部で湿度データと気圧データの取得の際、温度データも同時に取得します。
- こうしないと、正しく温度補正されず、データがばらつきます。
mbedソフトウェア
- サンプルプログラムはmbed_BME280です。
- mbed_BME280_LPC11U35_501.binを書き込みます。
トラ技mbedのプログラム書き込み方法
- ISPボタンを押しながらRESETをON/OFFします。
- PCにUSBストレージとして認識されます。
- firmware.binを削除します。
- バイナリファイルをコピーします。
- RESETを押します。
接続
- BME280のVDD(1)をmbedの3.3Vに接続します。
- BME280のGND(2)をmbedのGNDに接続します。
- BME280のSDI(4)をmbedのSDAに接続します。
- BME280のSDO(5)をmbedのGNDに接続します。
- BME280のSCK(6)をmbedのSCLに接続します。
著作権と免責事項
- 個人利用に限定され、著作権者の許可なく商用利用できません。
- 直接間接に関わらず、使用によって生じたいかなる損害も筆者は責任を負いません。
Please log in to post comments.