Arduinoで24LC256などのEEPROMをI2Cで使うときのデバイスアドレスについて。

A2,A1,A0の組み合わせで0〜7のアドレスを設定できる。

ググった時のサンプルプログラムの表記が0x50だったり0xA0だったりする。
(A2,A1,A0をGNDに接続した場合)


R/W部分を含めると0xAから始まる8ビット表記となる。
8 7 6 5 4 3 2 1
1 0 1 0 A2 A1 A0 R/W


厳密にアドレス部分だけ使用すると0x5から始まる7ビット表記となる。
7 6 5 4 3 2 1
1 0 1 0 A2 A1 A0

Arduinoのライブラリで使用する場合は0x5から始まる7ビット表記となる。

ArduinoではR/W部分はライブラリ側で追加されるのでアドレスから切り離して良い。

つまり、マニュアルで使用する場合読み込みは0xA1、書き込みは0XA0 となる。(R=1,W=0) 


パソコン ブログランキングへ