I2C EEPROM内のデータをSDカードに保存したり、SDカード内のデータをEEPROMにコピーするためのArduino用のスケッチです。IchigoJam用EEPROMのコピー保存/展開にも使用することが出来ます。
以下からダウンロードしてお使いいただけます。いずれも試作品につき、適切な評価を行っておりません。(動作確認程度は実施)
epromREAD :EEPROMからデータを読み込んでSDカードへ保存します。 epromWRITE :SDカード内のデータをEEPROMに書き込みます。 EEPROM.HEX :IchigoJam用のサンプルです。 epromREAD・epromWRITE Ver 0.0 ダウンロード(初回バージョン) epromREAD・epromWRITE Ver 0.1 ダウンロード(修正バージョン) |
Ver 0.0は1024Kbit(128KB)専用です。また、Arduino 1.6.5では動作しません。
Ver 0.1は512Kbitに対応しました。動作確認したのは512Kbitのみです。512KbitのEEPROMを接続する場合は、EEPROMの3番ピン(A2)をGNDに接続してください。256KbitのEEPROMでも動作しますが、256Kビットのデータを2度、読んで512Kビットのファイルを作成してしまいます。書き込み時も、同じデータを、2度、書き込んでいます。読み書きに無駄な時間を費やしてしまいますが、ご容赦いただければと思います
また、Ver 1.0では、IDE Arduino 1.6.5でも動くようにしたつもりですが、動作確認はArduino IDE 1.0.6でしか行っていません。
どちらも、あまり綺麗なコードではありません。不具合がありましたらお知らせください。
以下に各デバイスの接続表を示します。Arduinoが5Vに対し、I2Cバスは3.3Vにしています。EEPROMは5Vでも動作しますが、I2C LCDが3.3Vのため、そのようにしました。
EEPROM部の回路図や配線図に関しては、下記のサイトを参考にしてください。
ArduinoにEEPROMを接続する配線図:
http://decabyte.it/projects/arduino-24xx1025-eeprom-library/
IchigoJam FANグループの後田さんからの紹介:
https://www.facebook.com/groups/ichigojam/706760432797046/
EEPROMと液晶をArduinoへI2C接続し、SDカードをSPI接続して使用します。
「epromREAD」をArduinoで実行するとEEPROM内のデータをSDカードに保存します。保存先のファイル名は「EEPROM.HEX」です。※SDカード内に同じ名前のファイルがあると、SD内の同じ名前のファイルが消えます。
「epromWRITE」を実行するとSDカード内のファイル「EEPROM.HEX」内のデータをEEPROMへ転送します。※EEPROM内に入っていたデータは消えます。
下図のようにICソケットを重ねて使うと便利です。詳しくは「IchigoJam 用 micro EEPROMカセット」を参照ください。
README.txtファイルを同封するなど著作権表示を残していただければ、修正・再配布が可能です。当方は不具合の責任を負いません。
現状、書き込みは1バイトずつにつき、書き込みに時間がかかります。EEPROMの書き込み回数も多いです。※頻繁に使用することは想定していません。
ほぼ自分用に作ったものです。いまのところ改良の予定や、詳しい説明を追加する予定はありません。不具合については、情報をいただければ、対応いたします。