液晶モジュールの使い方

過去にPIC16F886とCCSコンパイラを使用してオーディオ用の液晶表示器を製作しました。
コンパイラが有料のCCSだったのでフリー版のXC8用に書き直しました。


                   回路図






   部品表
 IC1: PIC16F1938 
 R1: 10KΩ
 R2〜R5: 無し
 R6: 10KΩ
 VR1: 半固定 10KΩ
 C1: 電解コンデンサ 100μF
 C2: セラミックコンデンサ 0.1μF
 C3: セラミックコンデンサ 0.1μF
 C4: セラミックコンデンサ 0.1μF
 Q1 赤外線リモコンモジュール ”PL-IRM0101”
 
  ターミナルブロック(小) 2ピン 1個
               3ピン 3個
 ヘッダーピン




使用する赤外線リモコン受信モジュールは、ピン配列が左からデータ出力、GND、+5V です。
同じ仕様であれば使う事ができます。



ここで使用する液晶モジュールは、”HD44780コンパチブル” 
白色抜き文字表示器 16x2行 です。
入力ピンが左上 1列に並んでいる物です。
秋月電子・アマゾン・AliExpress にて購入できます。


            PIN割り当て



LCD以外を先にすべて取りつけてください。



LCDにヘッダーピンを取りつけます。


基板と並行になるように取りつけてください。
写真のようにならないよう注意してください・・・・・



書き込み端子がありますので、L型ヘッダーピンを取りつければそのまま書き込みができます。




赤外線リモコン受信モジュールからの信号をPICで処理する場合は
JP1を接続していください。


         端子内容


使用するマイコンは「PIC16F1938」です。
 テストプログラムはここ、HEXはここ 。
 LCDを制御するプログラム(lcd_lib.c:lcd_lib)は、
後閑 哲也 (著) 「電子工作のための PIC16F1ファミリ活用ガイドブック」
にて公開されているプログラムを利用しています。詳しくは書籍を買って確認してください。

テストプログラムを書き込み電源DC+5Vを入れるとこのような表示でます。


 半固定ボリュームを調整しないと表示が見えませんので半固定ボリュームをどちらかに回して
文字が表示されるように調整してください。

 LCDを表示するには初期化を行い、文字列の先頭位置を指定してprintf文で表示する事ができます。
ただし、printf文で表示できるのは英数だけですので、'円’などの文字やカタカナはコマンドを使って
書き込みする必要があります。

 この基板はシリアル通信の送受信と赤外線受光モジュールが装着できますので、PCなどからのシリアル通信を使った制御、
赤外線リモコンでの制御を行う事ができます。
今回の基板のシリアルの送信はデバック用扱いとしましたので、写真のように基板に半田付けして接続します。


ボーレートは19200bpsです。
今回のサンプルプログラムは2秒間隔でシリアル送信で文字列を出力し続けます。

printf文をLCD表示とシリアル通信で使う場合1文字出力の"putch"にて振り分けています。


CS3310を使った電子ボリュームの時製作したUARTのデータをLCDで表示するプログラムも
XC8に書き直しました。

http://cat0048.my.coocan.jp/CS3310/LCD-MAIN.htm

プログラムはここ、HEXはここ


動作確認は”Tera Term”を起動して、ボーレートは19200bpsに設定してください。
送信したデータをわかりやすくする為、”ローカールエコー”に設定してください。
送信の改行コードは「CR」か「LF」のどちらか片方だけ設定してください。


LCDの1行目を変更する場合は、”L1:1234567890123456” と入力してリターンキーを押してください。
LCDの2行目を変更する場合は、”L2:ABCDEFGHIJKLMNOP” と入力してリターンキーを押してください。

マイコンで制御する時は、
printf("L1:1234567890123456\n");    //一行目表示
__delay_ms(8);
printf("L2:ABCDEFGHIJKLMNOP\n");   // 二行目表示


と、書くだけで変更できます。


オリジナルのキャラクタも表示出来ます。プログラムを参考にしてください。
プログラムはここ



XHコネクタを取り付けられるように基板を変更しました。
(XHコネクタ ベース付ポスト トップ型 8P B8B-XH-A)

別基板のマイコンで液晶を制御したい場合に使用します。
基板に取り付けるのはXHコネクタと半固定ボリュームとコンデンサだけとなります。

XHコネクタのハーネスの作り方はここに書いています。
JST XHコネクタを使う (coocan.jp)

XHコネクタのピン配列は
1:RS(RB2), 2:E(RB3), 3:DB4(RB4), 4:DB5(RB5),5:DB6(RB6), 6:DB7(RB7), 7:+5V, 8:GND
となっています。

メインへ