Segment LCDを試すSegment LCD
Aitendoで在庫処分として安価に販売されている「Segment LCD」を試しました。
1. LCD表示パターンのバリエーション
数種の扱いがあるようなので、適当に選んでみました。購入したものは次の通りです。
製品によって、異なる特殊記号が付いています。ターゲット製品向けに専用設計されてあるもののようですが、うまく使える記号があれば利用するのも良いと思います。
(今回は試すだけなので、使用していません)
2. 試作回路
LCDの制御信号は4本だけです。
Arduinoとの接続は以下のように配置しましたが、ライブラリの初期化時に変更可能です。
LCDの信号 | Arduinoの端子 |
DATA | D2 |
WR | D3 |
RD | D4 |
CS | D5 |
製品によってピン配置が違うので、シールドに複数の端子を出して配線を入れ替えています。
また、電源とLEDの電圧も3.3Vと5Vをジャンパで切り替えられるようにしました。
制御用ICは3.3Vでも5Vでも動くようですが、液晶のバイアスが違ってくるため、調整が必要になる場合があるようです。
バックライトの電流制限抵抗は、LCD基板パタンと搭載されている抵抗値を確認したほうが良いでしょう。抵抗なしで直結に設定されている可能性があります。
(実際に読み出しは行わないので、RDを除き3本でも大丈夫だと思います。)
3.数値の表示プログラム
基本的にはHT1621というLCD制御ICを使っているので、ソフトウエアからの制御方法は同じです。IC内のメモリにデータを書き込むと、対応したセグメントが点灯する仕組みです。
Arduino用に、こちらのライブラリを使いました。
製品のバリエーションによってメモリとセグメントとの対応が違います。液晶に数字を出すには、機種に応じてソフトウェアで対応をとってあげる必要があります。
幸い上記の液晶は1桁のセグメントを隣接するニブルに割り当てるなど、規則性があり扱いが楽でした。
製品の違いを吸収して同じように扱えるように、SketchではCPPの条件コンパイルでパタンを切り替えるようにしました。
- 数字(大文字)、数字(小文字)を表示ます。
- 小数点、コロン、特殊記号は扱っていません。
Arduinoのライブラリーは,githubのここからダウンロードしてください。
(了)