電源を疑え・・RTCモジュール(DS1302)の時刻設定でハマった話
データロギングに使おうと、ヘッダの写真のように複数のモジュールをつないでみています。
その中で、RTCモジュール(DS1302)も使います。
まあ、上手く動いて時刻読めています。ただ、「分」オーダーのずれがあるので時刻合わせをしようと思った次第。ところが、やってみると設定できない。設定したつもりが書き変わらずにもとのずれた値がそのまま残ります。前やったときはできていたはず。ナゼナゼ?
いろいろやってみると、「秒」の設定はできる。なのに分、時などがあわせられない。なんだこりゃ。コードを見直したりいろいろで数時間使ってしまいました。
どうにもならないので基本に戻ろう、とRTC以外のモジュールの電源供給を外してみたら・・。今度は問題なく書きこめた。
なんだ。つまり、電源の力不足だったようですね。そういえば、実験中のArduinoUNO、じつはバスパワーのUSBハブで分岐した先に接続していました。それで複数モジュール繋げていたのです。読み出しはOKでも書き込みの際には容量がたりなくて正常動作しなかった、ということになるでしょう。
全く動かないならもっと早く気付いたかも。なまじ読み出しに問題が無かったので盲点になってしまいました。
「電源を疑え」・・今後のためにメモしておきます。