LCDとは液晶ディスプレイのこと
LCDってなに?
何か面白いことにつかえるの?
子供とプログラミングの勉強に使えたらいいんだけど。
LCDというのは、Liquid Crystal Displayの略で液晶のことだよ
PCにつながるモニタことを想像したかもしれないけど
電子工作で使うのは、もう少し小型のものなんだ。
たとえば、こんなものがあるよ!
好きな文字や記号を表示できるよ!
これは、おもしろいものがつくれそう!
時計とか万歩計とか、対戦ゲームとかもつくれそう!
子供とのプログラミングでの、おすすめのLCDは1602
インターネト上に最も情報が多いのは、1602というLCDです。16文字を2行分表示することができます。
英数字やカタカナを表示することができます。子供とのプログラミングでお勧めなのが、I2Cという通信方式で接続することができるLCD 1602です。
パラレル通信という、たくさんのピンで制御する方式のLCDや、SPI通信という少し難しい方法で制御するLCDがあるのですが、
一番のおすすめはI2Cという方式を使ったものです。たったの4本だけの線をつなげば、好きな文字を表示できます。
micro:bitにLCDをつなぐには、センサーシールドが必要
ただし、micro:bitには、そのままではLCDはつながりません。I2Cという通信方式でmicro:bitとつなぐ必要があります。
つなぐためには、センサーシールドが必要です。例えば、下記記事で紹介した「Ks0360」を使用するといいでしょう。
https://kidsprog-dojo.com/ks0360/
micro:bitとLCDの結線
下記写真のように結線を行います。
センサーシールド側:LCDとして、結線を書くと
* 20---SDA
* 19---SCL
* V2---VCC
* G---GND
です。
VCCとGNDで、センサーシールドからLCDに電源を供給しています。
I2Cの通信線は、SDAとSCLです。
SCLはクロック信号で、SCLでタイミングをはかりながら
SDAでデータをやり取りしています。
LCDを使うために拡張機能を入れる
高度なブロックを選択して、拡張機能をクリックする。LCDで検索を行い、makerbitをクリックしてインストールします。
インストールが完了しました。
MakerBitのLCDブロックを使用していきます。
LCDの動作確認を行うためのプログラム
下記プログラミングを行います。
「最初だけ」では、下記初期せて地を行います。
- Connect LCD at I2C addressでLCDのアドレス:39を設定します。
市販されているI2C接続のLCD 1602はアドレスが39であることが多いです、 - switch LCD backlinghtでは、バックライトを点灯するためにon設定を行います。
- LCD1602 clear displayで、LCDの内容を全消去します
「ずっと」では、画面の表示を行います。
- LCD 1602 show "MakerBit" at position 1 with length 16
では、1番目の場所(先頭)に16文字で「MakerBit」を表示するという指示を行っています - 一時停止(ミリ秒) 100では、100ミリ秒の待機を行っています。
同じ文字を連続で表示しても電気がもったいないので、100ms待機と文字の表示を繰り返し行います。
https://makecode.microbit.org/_dDw5FVKWxFuC
micro:bitにソフトを書き込んで動作確認
micro:bitにソフト書き込みのためのUSBケーブルを接続します。
また、センサーシールドに電源供給のためのUSBケーブルを接続します。
画面左下のダウンロードボタンを押します。
ダウンロードが終わると、LCDに"MakerBit"という文字が表示されます。
うまくいったら、"MakerBit"を書き換えて、表示する文字を変えてみましょう。
また、positionを変更して、表示する位置を変えてみましょう。
LCDに文字が表示されないとき
- LCDとセンサーシールドの結線があっているかを確認してください
4本すべての結線があっていないと、LCDに文字が表示されません。 - USBケーブルを2本とも接続しているか?
LCDに文字を表示するだけなら、センサーシールドへUSBケーブルを接続すれば問題ありません。
micro-bitにソフト書き込みを行う場合には、micro:bitにもUSBケーブルを接続しないといけません。
基本的に、LCDのソフトを作るときは2本のUSBケーブルをつなぎっぱなしにします。 - プログラムが間違ってないか確認する
上記に記載したプログラム通りに入力できているか、ブロック一個一個確認してみましょう。
ひとつでも間違っていると文字が表示されません - LCDの表示が薄い場合には、センサーシールドのジャンパピンの設定が間違っているかもしれません。
V2をジャンパピンで、3.3V設定でなく5V設定にしてください。LCD 1603は5Vで動きます。
- LCDの濃度が薄すぎる、または濃すぎる
LCDの裏に濃度調整用の半固定抵抗があります。精密ドライバで半固定抵抗を回して濃度調整しましょう。