macsbug

Just another WordPress.com site

ESP8266 と I2C

leave a comment »

ESP8266 における I2C の配線とプログラム方法を示します。                                                    2015.10.24



I2C は、SCL と SDA 信号を使用し、使用する為には、ピン番号を設定する必要があります。
I2C の配線は Liblary の Wire で定義します。
スケッチは、以下。

#include <Wire.h>
void setup(){
Wire.begin(SDA,SCL) ;
}

例:Wire.begin(0,2) ;  : GPIO_0 と OLED の SDA を接続。 GPIO_2 と OLED の SCL を接続。


確認方法:

ESP8266 単体で I2C OLED を動かす」の回路を使用し、全てのピンの組み合わせを確認しました。

例:Wire.begin(0,2) ;   Wire.begin(14,0) ;


結果:
左、SDA 端子 0,2,4,4,12,13,14 と 右、SCL端子 0,2,4,4,12,13,14 の組み合わせを全て確認。
全ての端子は Wire.begin(SDA,SCL)  の設定で使用可能である事が解かりました。

SCL
  SDA
 GPIO 0 2 4 5 12 13 14
0  OK  OK  OK  OK  OK  OK
2  OK  OK  OK  OK  OK  OK
4  OK  OK  OK  OK  OK  OK
5  OK  OK  OK  OK  OK  OK
12  OK  OK  OK  OK  OK  OK
13  OK  OK  OK  OK  OK  OK
14  OK  OK  OK  OK  OK  OK

 


メモ:
ESP8266 のマニュアルは、I2C の記載があいまいで分かり難い。
ネットの記事では、動いた、動かない、GPIO_14=SCL固定 である等、多数の記事がある。
その為に、実際に全てのピン動作を確認しました。
今回は、ESP-WROOM-02 で確認しました。
確認するピンの数は多く時間を要しましたが、動く事が確認でき便利になりました。
結果論ですが、ESP-01(GPIO_0,GPIO_2 )でも使用する事が必要ですから、当たりまえといえば当たり前。
ESP-01は、同じ CPU を使用し端子は 8本です。CPUのGPIO端子を引き出せば、使える事になります。


 

Written by macsbug

10月 23, 2015 @ 10:05 pm

カテゴリー: ESP8266

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト / 変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト / 変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト / 変更 )

Google+ フォト

Google+ アカウントを使ってコメントしています。 ログアウト / 変更 )

%s と連携中

%d人のブロガーが「いいね」をつけました。