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通信がうまくいっているかどうかは,Aruduinoが公式で提供しているI2Cスキャナープログラムを利用すると確認できます.
I2Cが正常に動作している場合はi2cアドレスが表示されます.
https://playground.arduino.cc/Main/I2cScanner