ikkei blog

電子工作やパズルのブログです。主にLEDを使った電子工作をやっています。

とりあえず、「ちっちゃいーの」にRTCを付けてみた

2014年03月01日 01時39分32秒 | Arduino
「ちっちゃいーの」にRTCを付ける
について、スイッチの件は、まりす@maris_HYさんから
ヒントを頂いたので、「ちっちゃいーの」本体のスイッチが
使えそうだと分かり、とにかくRTCのスケッチを書いてみました。

なかなか時間が取れずに居ましたが、
とりあえず出来たのが、これです。
時間はでたらめですが、表示できました。

3x8ドットで数字を表示したので、7セグっぽい感じになりました。
このモジュールに使われているRTCのICはDS1307で、
ググるといろいろ出てきます。
I2Cのプログラムはここを参照しました。


そして、スイッチを押すと0:00になるようにしてみました。

なかなか、良い感じ。
ちゃんと反応しています。

ところが、スイッチを乱打すると、しばらくしてフリーズしてしまいました。


ならば、まりすさんのアドバイス通り、I2Cのタイムアウトを検出して....
ん? wireの説明にタイムアウトがありません。

ググってみると案の定、I2Cのタイムアウトは取っていないとのこと。
さらに、普通にしててもハングすることがあるらしいことが分かりました。
ArduinoのI2Cのライブラリってダメダメじゃん。

また、Sim@Sim0000さんのブログも見つけました。

ちょっと、じっくり考えて対策を考えることにします。