Arduinoで美咲フォントを使った8x8ドットマトリクスLED(3)
前回の続きです。前回から1か月も経過してしまいました。
時刻を表示するためのRTCモジュールでちょっとハマってしまいました。
バックアップ電池があるのに、電源を切るとなぜか時を刻んでくれない件です。
「DS1307のこれが仕様なのかなぁ」と思い、別モジュール等を調べていました。
ただ、こんな不便な仕様のはずはないと思い、DS1307の仕様を調べると
やはりバックアップ電池だけで時を刻んでくれるようです。
ボタン電池を抜くと時間が2000/01/01に初期化されるのでボタン電池のバックアップ
は機能しているようでした。
プログラムや回路が悪いのかと思い見直してもダメでした。
ところが、ダメ元でボタン電池を交換してみるとボタン電池だけで時を刻むようになりました。
どうも、ボタン電池の電圧が低くてデータは保持するが時刻は刻まない状態だったようです。
これで先に進めるようになりました。
ということで本日は作業再開で、外部EEPROMの書き込みツールとデバック環境を構築しました。
EEPROM AT24C1024Bにパソコンから指定したデータ(バイナリファイル)を読んで、
AT24C1024Bの任意のアドレスに配置するツールを作成しました。
シリアル通信でデータ転送を行うため、シリアルでデバックが出来ないため
LCDディスプレイを取り付けました。I2Cバス接続です。
デバック効率が良くなりました。書込み中の状況も把握できます。
フォント用のテーブルも外部EEPROMに配置しようと思っています。
一応、パソコン(Linux CentOS 6.5)から書き込めるのですが、
パソコンからUSB接続でのシリアル通信をするタイミングでArduinoが
リセット(リブート)するのですが、初回は必ず通信エラーとなり、
2、3回目の接続で正常の通信が行えるようになります。
ちょっと不安定です。原因不明です。
最近のコメント