「マイコンで気象観測」其の2 LCDとRTCを使う

 LCDとはキャラクターディスプレイという、主に文字を表示する液晶画面です。シリアル通信だと受側の機器が必要ですが、LCDなら文字数に制限はあれど手軽に情報を表示できます。
 RTCとはリアルタイムクロックです。正確な時刻や時間カウントを得るのに必要です。Arduinoは持っていませんが、GR-KURUMIには標準搭載されています。

 先ずはLCDから。LCDには「HD44780コンパチブル」とI2Cの2種類があります。一長一短があって、I2Cの方が遥かに少ない線数で接続でき、かつ他のI2C機器も芋づる式に繋げられます。しかし、現在のところI2Cは開発環境では標準でサポートされておらず、初心者が使うにはかなり敷居が高いと思います。
 今回は超小型グラフィックLCD AQM1248Aを使います。表示出来る文字数は少ないですが、小型で省電力で、かつ安い。これ単体ではちょっと特殊なピン間隔なことと、コンデンサや抵抗を足す必要があるので、こういうキットもあります。
 プログラムソースの解説はしません。使用するライブラリーで変ってしまうからです。Arduino向けのライブラリーでもGR-KURUMIで使えました。

 温度を表示させています。コンデンサが見えていますが、裏には抵抗があります。


 次はRTCです。気象観測値を得て、現在の値さえ見れれば良い場合は不要ですが、SDカード等に保存する場合に、何時のデータなのかが必要になります。仮にdelay関数で1秒毎に処理をさせて時間をカウントさせても、マイコン自体のカウント精度では時間が経つとずれてきます。そこでRTCの出番です。GR-KURUMIには標準搭載されています。Arduinoでは標準搭載されていないので新たに追加する必要があります。ただ、GR-KURUMIにはRTC用のバックアップ電源用端子がありませんので、電源が切れる度に時刻を修正する必要があります。
 RTCで面倒なのは、初期時刻入力です。シリアル通信で時刻を送ってあげるのが、一番楽だと思います。本家に参考があります