ESP32のI2C通信はArduinoのWireライブラリを使うことで簡単にできる.
まず,SCLピン,SDAピンの設定を行う必要がある.
* Arduino UNOの場合A4,A5
Wire.begin(SCL, SDA)
1 2 3 4 5 6 7 8 9 10 11 |
#include <Wire.h> //wireライブラリをインクルード void setup(){ Wire.begin(22,21);//SCL, SDAの順 } void loop(){ /************************************** * 処理 * ***************************************/ } |
自分はこのプログラムだけでは動きませんでした.そこで, プルアップ抵抗を5VとSDAピン,SCLピンの間に挟むと動くようになりました.
そもそもi2cがうまくいっているかどうかは,I2Cスキャナープログラムを利用すると確認できます.
もともとこのプログラムはi2cのアドレスを調べるプログラムです.そのため,うまくいっている場合はi2cアドレスが表示されます.
https://playground.arduino.cc/Main/I2cScanner