I2C-PLUSは、信号線が3.3VのI2CデバイスをArduino UNOで手軽に利用できるようにするミニシールドです。
通信線としてI2Cを利用するセンサーや入出力デバイスが増えていますが、信号線が3.3Vとなっているものが多く、Arduino UNOの信号は5Vとなっているために、そのままでは手軽に接続することができませんでした。
I2C-PLUSの組み立て例
I2C-PLUSの特徴を以下に示します。
I2C-PLUSは、Arduino MEGA など、Arduino UNO以外のArduinoボードでは利用できませんのでご注意ください。
ネットショップ:
I2C-PLUSには、3.3V信号の様々なデバイスを搭載、接続することができます。
I2C-PLUSにOLEDディスプレイやセンサー群を搭載した例
BME280用のライブラリは、Arduino IDEのライブラリマネージャを利用してインストールすることができます。
ライブラリマネージャの検索フィルタに[BME280]を入力して絞り込むと、
BME280用のライブラリは、この文書の作成時点では3個ほど列挙されます。
ここでは、[BME280 by Tyler Glenn] とタイトルが付けられているライブラリを選択してインストールした場合のサンプルスケッチを示します。
#include <BME280I2C.h> BME280I2C bme; #define PRESSURE_HPA 1 // ヘクトパスカル void setup() { Serial.begin(115200) ; while (!bme.begin()) { delay(1000) ; } } void loop() { float temp ; // 温度 float hum ; // 湿度 float pres ; // 気圧 // 気圧(hPa)、温度(摂氏)、湿度を取得 bme.read(pres, temp, hum, true, PRESSURE_HPA) ; Serial.println("---") ; Serial.print("Temp: ") ; Serial.print(temp) ; Serial.println(" C") ; Serial.print("Humidity: ") ; Serial.print(hum) ; Serial.println(" % RH") ; Serial.print("Pressure: ") ; Serial.print(pres) ; Serial.println(" hPa") ; delay(1000) ; }
I2C-PLUS回路図