一眠りしてしまったので、寝れないのでPICのLCD表示をやってみた。今回使用するPICはPIC16F88(18PIN)です。
とにかく動作サンプルとしての確認なので、何のプログラム修正もなくコンパイルが通るのでとてもありがたい。動作動画を下記に示します。
既に、LEDの点滅は確認済みなので、同じ小型のブレッドボードに5V仕様のLCD(16文字X2行白色抜き文字表示タイプ(SC1602BBWB-XAーGB-G)を接続して確認してみた。



PICの選択もインタネット上で確認してみると当初予定していたPIC16F84Aの評判があまりよくないので、今回は無難にPIC16F88にしてみた。違いはA/Dコンバータ、PWM等がないぐらいなPIC16F84Aよりは用途があるが、LCDの動作確認だけとしては、ちょっともったいないかも?いずれにしてもサンプルプログラムでの液晶への表示は文字列で簡単にできるようなので超楽ちんだ。ちなみにLCD表示用の関数は以下の通りでした。
-----------------------------
lcd_goto(0x00);
lcd_write(0x0f);
lcd_puts("Hello world !");
lcd_goto(0x40);
lcd_puts("You can do it!");
-----------------------------
1行目の指定方法はlcd goto(0x00);//LCDの表示位置をホームポジション
2行目の指定方法はlcd_goto(0x40);//LCDの表示位置を2段目に
それぞれ文字の出力はlcd_puts("***~***");//LCDにメッセージ’***~***’を表示だ。
コンパイルはサンプルプログラムをダウンロードし、空のプロジェクトを作成、Source Files にmain.c lcd.cを右クリックのAdd Existing Item...でそれぞれ追加していく。ヘッダーファイルもHeader Files に同様にlcd.h を追加します。サンプル元でのMPLABは旧バージョンのMPLAB IDE v8.40とv8.90用なので最新のMPLAB X IDE v1.70ではプロジェクトを認識しないためです。最初はダウンロードしたサンプルがのコンパイラがHitech PICC Pro Lite mode v9.70で作成されていたので、例のごとく ___CONFIGをWindowsメニューのPIC Memory ViewsでのConfigurationでOutputへのCONFIGコードの出力を行い書き換えを行った。よくよく見るとMPLAB XC8 v1.12用サンプルも下の段にNewとしてあった。そのままやってもよかったのだが、結局はダウンロードをしてサンプル確認を行いました。
また、今回の液晶との接続用のケーブルが無かったので、単ワイヤーでマップピンでブレッドボードにさせるように作成しました。これが一番時間がかかりました。
インターネットサンプル調査で、いろいろなLCDへの表示用の関数があるようなので、良い機能のものは取り入れ追加していこうと思っている。また先の7セグメントLEDのデータなどのシリアル通信でのデータ表示などもやろうかと思う。いろいろと表示の応用展開ができそうだ。
本日は、LCD用の回路をブレッドボードで接続し、サンプルプログラムのコンパイルと動作確認でした。