« 秋月、新マイコン16F1938の動作確認 | トップページ | 秋月、新マイコン16F1827マイコンの動作確認 »

2011年1月31日 (月)

「LCD&タッチセンサ」のLCD時計の製作

Lcdtouch_1939tokei 書籍「LCD&タッチセンサ活用の素」の出ていた液晶パネルを使用した時計を製作しました。

市販の液晶表示モジュールを使うと、マイコンをスタンバイモードとしても、液晶モジュール内のドライバが常時動作していて消費電流を減らすことが出来ません。CMOSマイコン+液晶の組み合わせでは、低速動作(またはスタンバイ)とすることで、流れる電流がリーク電流ぐらいになり長時間動作させることが出来ます。

PICマイコンにおいても、液晶パネルを直接駆動することができるものを見かけるようになってきました。書籍で使用しているマイコンは、PIC16LF1937という、新しい16F1000シリーズのものを使っています。低消費電力とするためには、液晶パネルを使うことになり、そのためには、液晶駆動回路を内蔵した16F193X(または16F914)を使ったほうが良さそうです。

秋月電子で入手できたのは、16F1939というメモリサイズの大きな、超低消費電力でないものでしたが、電源電圧などは同じようなので、代わりに使用してみました。16F193Xシリーズには、16F1933,16F1936,16F1938(28ピン)と、16F1934,16F1947,16F1939(40ピン)があり、それぞれメモリサイズが倍ずつになっています。コンパイルの際にメモリサイズの違いは出力コードには現れず、そのまま置き換えることができると思います。前に、PIC24FJ64GA002とPIC24FJ64GA004のように、メモリサイズは同じで、ピン数のみ異なるものがありましたが、そこでも、ポートなどを使用しないことでそのまま差し替えることがありました。

コンパイルでは、PIC16LF1937と指定し、書き込みの際には、PIC16F1939として、HEXファイルをインポートして書き込みを行いました。電源を入れると、どうやら無事に動いたようです。

PIC16LF1937を使用した理由として、書籍の執筆時点では16F1939はまだなかったのではないかと思います。また、コンパイルする際に使用するHI-TECHコンパイラでは、現時点でも16F1939には対応していないのも理由のようです。

省電力で動作させるために、表示の更新のとき以外は、SLEEP命令によりスタンバイモードにしているようですが、このときキー入力を受け付けなくなってしまいます。以前に16F914を使って液晶パネルを駆動してみたときにもあったのですが、私は、キーの受け付けにポートチェンジ割り込みを使いました。しかし、割り込みを使用すると、チャタリングの除去がやりにくいことがあげられます。書籍のプログラムでは、キーの受付のために、割り込みを使用することなく、時刻更新のための0.5秒ごとの割り込みのときに受け付けているようです。そのため、キーを0.5秒以上押し続けなければ受け付けないことがあります。

前に制作したPIC16F914を使用した時計と較べてみることで、著者の工夫したことが分かってきます。表示3桁を表示するために3バイト分のレジスタを使用するのですが、私は、プログラムが簡単になるように、1つのレジスタに対して1桁を割り付けましたが、著者は、プリント基板の配線が容易に引き回せるように、レジスタはランダムに割り付けています。プログラムは複雑になりますが、プリント基板の配線はきれいにまとまります。

書籍に出ているものをそのまま作ることで、その出来栄えを評価するのもありますが、自分で作ったものがあって、それと書籍に出ているものを比較することで評価するのでは、それぞれの工夫が浮き立って、その利点が良く見えてくることが分かりました。

« 秋月、新マイコン16F1938の動作確認 | トップページ | 秋月、新マイコン16F1827マイコンの動作確認 »

製作」カテゴリの記事

コメント

コメントを書く

(ウェブ上には掲載しません)

« 秋月、新マイコン16F1938の動作確認 | トップページ | 秋月、新マイコン16F1827マイコンの動作確認 »

フォト
無料ブログはココログ
2016年6月
      1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30    

USBとマイコンの参考書購入