カテゴリ:Arduino
これまでにいじって来た製品やキットから思うことは、時計はやはりバックアップ電源(電池)が必要!ってことでした。 ということで、先日購入したバックアップ電池付きのRTCを使って見ることにしました。 これ、先日DX.COMからやっと到着したDS1307を使ったRTCモジュール(I2C接続)ですが、今日、梱包材をといてみたら、なぜか買った3個全部が中の帯電防止フイルムが開封されていました。 それも、中身が出ない大きさでしか切られていない。 なんだ?これわ??? 中身を出して確認しました(税関)、なら判るんですが、中身を確認できない大きさにしか開けていない。穴から光ファイバーカメラでもいれて確認したのか??? 下の1個だけ、袋がカットされて中身が取り出せるようになっていました。なので、1個確認してあとは面倒だから空けたフリをしてそのまま再梱包した、というような感じですね。 まあ、リチウム充電が中に入っているので、本当は危険物なので輸入できない、機器の中に組み込みならOK、1個/梱包ならOKとかいろいろ規則があるらしいですが。。。。。。 モジュールは接続ピンがついていません。なので、ブレッドボードを利用してピンを半田付けします。 しかし、なぜかこのモジュール、ピッチがブレッドボード(=2.54mmピッチの基板)と合いません。 なので、ピンを斜めに傾けて半田付けしないとブレッドボードでも使えません、。。。。。。。orz まあ、中華品質だからでしょうか?それとも既にユニバーサル基板ユーザーなどはタ-ゲットに入っていないのか。。。。。 DS1307RTCモジュールをArduinoで使えるスケッチをググって試して、期待通り動作した、以下の方のライブラリを使用することにしました。(元はAdaFruit) Arduino用RTCライブラリ(DS1307/RTC8564) I2CLCDにRTCから読み出した値を表示しています。 問題はRTCに時刻を設定するUIです。先日10キーをアナログ接続して使うことを試しましたが、その後、10キー無しでその10キーで設定するコードを書いていたら結局10キーいらないという結論に達してしまいました。 10キーの代わりにボリュームを使ってAruduinoの関数を使うとそれで設定できるという。 sensorValue = analogRead(analogInPin); outputValue = map(sensorValue, 0, 1023, 0, 9); これを使えばボリューム回して0~9の数字入力ができます。。。。 ということで、これを使ってしばらく放置しているタイムショック時計に応用していきたいと思います。 お気に入りの記事を「いいね!」で応援しよう
最終更新日
2014.06.08 23:55:00
コメント(0) | コメントを書く |