ホーム > Arduino > Segment LCDを試すSegment LCD

Segment LCDを試すSegment LCD

2015 年 10 月 17 日

Aitendoで在庫処分として安価に販売されている「Segment LCD」を試しました。

SegLCD01

1. LCD表示パターンのバリエーション

数種の扱いがあるようなので、適当に選んでみました。購入したものは次の通りです。

型番

桁数

画面構成 ピン数 ピン構成 備考
TS119-5 7桁+小1.5桁 TS119 9 CS, RD, WR, DATA, GND, VCC, ? LED_K, LED_A コロン(時計用)下2桁のみ小数点
TS206 9桁+小2桁 TS206 9 CS, RD, WR, DATA, GND, VCC, ? LED_K, LED_A 下4桁のみ小数点
TS120 8桁+小2桁+1 TS120 7 CS, RD, WR, DATA, GND, VCC, ? バックライトなし
TS174 7桁+小1.5桁 TS174 9 CS, RD, WR, DATA, GND, VCC, ? LED_A, LED_K TS119と同じLEDが逆
TS125 8桁+小2桁+1 TS125 8 (LED_A), GND, VCC, DATA, WR, CS, RD, (LED_K) バックライトなし

製品によって、異なる特殊記号が付いています。ターゲット製品向けに専用設計されてあるもののようですが、うまく使える記号があれば利用するのも良いと思います。

(今回は試すだけなので、使用していません)

2. 試作回路

LCDの制御信号は4本だけです。

Arduinoとの接続は以下のように配置しましたが、ライブラリの初期化時に変更可能です。

LCDの信号 Arduinoの端子
DATA D2
WR D3
RD D4
CS D5

製品によってピン配置が違うので、シールドに複数の端子を出して配線を入れ替えています。

また、電源とLEDの電圧も3.3Vと5Vをジャンパで切り替えられるようにしました。

制御用ICは3.3Vでも5Vでも動くようですが、液晶のバイアスが違ってくるため、調整が必要になる場合があるようです。

バックライトの電流制限抵抗は、LCD基板パタンと搭載されている抵抗値を確認したほうが良いでしょう。抵抗なしで直結に設定されている可能性があります。

SegLCD02

(実際に読み出しは行わないので、RDを除き3本でも大丈夫だと思います。)

3.数値の表示プログラム

基本的にはHT1621というLCD制御ICを使っているので、ソフトウエアからの制御方法は同じです。IC内のメモリにデータを書き込むと、対応したセグメントが点灯する仕組みです。

Arduino用に、こちらのライブラリを使いました。

製品のバリエーションによってメモリとセグメントとの対応が違います。液晶に数字を出すには、機種に応じてソフトウェアで対応をとってあげる必要があります。

幸い上記の液晶は1桁のセグメントを隣接するニブルに割り当てるなど、規則性があり扱いが楽でした。

製品の違いを吸収して同じように扱えるように、SketchではCPPの条件コンパイルでパタンを切り替えるようにしました。

  • 数字(大文字)、数字(小文字)を表示ます。
  • 小数点、コロン、特殊記号は扱っていません。

Arduinoのライブラリーは,githubのここからダウンロードしてください。

(了)

カテゴリー: Arduino タグ:
コメントは受け付けていません。