Arduino Nano と外付けEEPROM を接続してみた [Arduino]
前回、Arduino UNO の内蔵EEPROMを試してみました。しかし容量が1024bytes しかないためアプリケーションは限定されそうです。ちょうど手持ちに外付けEEPROMがあるので試してみることにしました。
EEPROMは、ATMELの24C256です。256K bits の容量があります。
ATMEL 2Wire EEPROMS AT24C128/AT24C256
http://pdf.datasheetcatalog.com/datasheets/228/160402_DS.pdf
データシートからピン配置を抜粋してみました。I2Cでアクセスすることができます。WP(Write Protect)は読み書きができるようにGNDに接続をします。
デバイスアドレスは下記のように設定できます。A0/A1 はGNDに接続するので、デバイスアドレスは0x50になります。(R/Wビットは含まない7bit)
Arduino Nano と 24C256 を下記のように接続してみました。Arduino Nanoの場合、I2Cは、SCL/A5 pin, SDA/A4 pin になります。
接続が分かるように、別アングルでも撮ってみました。
すでに試した人はいないかなと探してみたところ、どんぴしゃりの記事がありました。世の中の先駆者の方々に感謝です。
Using Arduino with an I2C EEPROM
http://playground.arduino.cc/Code/I2CEEPROM
サンプルのコードを見ると、アドレスを2回に分けて送信しています。念のため、Read/Writeプロトコルをデータシートで確認してみます。
Readが少し分かりにくいですが、Read/Writeともにアドレスを2バイトで送信していることが確認できました。
実際に試してみます。前回と同じように、書き込み用のスケッチでEEPROMにデータを保存、読み込み用のスケッチで記録されたデータを読み込み確認します。
書き込み用のスケッチを下記に示します。前回同様、動作させても何も起きない地味なプログラムです。
読み込み用のスケッチです。記録されたデータを読み込み、シリアルモニターに表示します。
正しくデータが書き込まれていることが確認できました!
これで Arduino Nano でも中規模のデータならSDシールドがなくても記録することができるようになりました。これから Arduino Nano を使い倒していきたいと思います!
(^_^)/~
関連記事
Arduino 内蔵のEEPROMを使ってみた
http://makers-with-myson.blog.so-net.ne.jp/2014-04-15
Arduino でMicro SDカードを使ってみた
http://makers-with-myson.blog.so-net.ne.jp/2014-04-14
EEPROMは、ATMELの24C256です。256K bits の容量があります。
ATMEL 2Wire EEPROMS AT24C128/AT24C256
http://pdf.datasheetcatalog.com/datasheets/228/160402_DS.pdf
データシートからピン配置を抜粋してみました。I2Cでアクセスすることができます。WP(Write Protect)は読み書きができるようにGNDに接続をします。
デバイスアドレスは下記のように設定できます。A0/A1 はGNDに接続するので、デバイスアドレスは0x50になります。(R/Wビットは含まない7bit)
Arduino Nano と 24C256 を下記のように接続してみました。Arduino Nanoの場合、I2Cは、SCL/A5 pin, SDA/A4 pin になります。
接続が分かるように、別アングルでも撮ってみました。
すでに試した人はいないかなと探してみたところ、どんぴしゃりの記事がありました。世の中の先駆者の方々に感謝です。
Using Arduino with an I2C EEPROM
http://playground.arduino.cc/Code/I2CEEPROM
サンプルのコードを見ると、アドレスを2回に分けて送信しています。念のため、Read/Writeプロトコルをデータシートで確認してみます。
Readが少し分かりにくいですが、Read/Writeともにアドレスを2バイトで送信していることが確認できました。
実際に試してみます。前回と同じように、書き込み用のスケッチでEEPROMにデータを保存、読み込み用のスケッチで記録されたデータを読み込み確認します。
書き込み用のスケッチを下記に示します。前回同様、動作させても何も起きない地味なプログラムです。
読み込み用のスケッチです。記録されたデータを読み込み、シリアルモニターに表示します。
正しくデータが書き込まれていることが確認できました!
これで Arduino Nano でも中規模のデータならSDシールドがなくても記録することができるようになりました。これから Arduino Nano を使い倒していきたいと思います!
(^_^)/~
関連記事
Arduino 内蔵のEEPROMを使ってみた
http://makers-with-myson.blog.so-net.ne.jp/2014-04-15
Arduino でMicro SDカードを使ってみた
http://makers-with-myson.blog.so-net.ne.jp/2014-04-14
サインスマート(SainSmart)Nano v3.0 互換 ATmega328P搭載!for Arduino ブラック
- 出版社/メーカー: サインスマート(SainSmart)
- メディア: Personal Computers
サインスマート(SainSmart)Nano I/O 拡張シールド for Arduino
- 出版社/メーカー: サインスマート(SainSmart)
- メディア: おもちゃ&ホビー
GPS APM2.5 NEO-6M モジュール EEPROM付き アクティブアンテナ
- 出版社/メーカー: AD
- メディア:
>Arduino Nanoの場合、I2Cは、SCL/A5 pin, SDA/A6 pin になります。
画像は正しいですが…
SCL/A5 pin
SDA/A4 pin
だと思います。
by maru (2018-01-28 23:57)
↑このコメントをもっと早く発見していればこんな事には...(´;ω;`)
by お名前(必須) (2019-10-23 18:16)
す、すいません。今コメントに気が付きました。修正しました!!
by ys_taro (2019-11-24 23:16)