LCDディスプレイの表示には、その接続(通信)方法として「パラレル通信方式」やI2C通信などの「シリアル通信方式」があります。
今回は基本となる「パラレル通信方式」で接続し表示させてみたいと思います。
パラレル通信方式でディスプレイに表示させるにはESP8266-LCDモジュール間の配線が多くなります。今回は理解を深めるため基本的な接続方法となるパラレル通信方式でESP8266と接続し文字を表示させてみたいと思います。
■配線図
■部品リスト
・ESP8266開発ボード
・LCDディスプレイ1602A
・ブレッドボード
・USBケーブル
・ジャンパーワイヤー
・可変抵抗(10KΩ小型ボリューム)
■1602 LCDモジュール端子構成
| ピン(端子) | 機能 |
| VSS | GND(電源) |
| VDD | 5V(電源) |
| V0 | コントラスト調整(電源) |
| RS | ラッチピン (コントローラーにデータを入れる) |
| RW | リード/ライトピン (読み込み/書き込みの選択) |
| E | Enableピン (変更を許可するかを選択) |
| DB0~DB7 | データビット(8ビット) (4ビットモードでは上位ビットDB4-DB7のみ使用) |
| A | LEDバックライト(アノード) : 5V |
| K | LEDバックライト(カソード) : GND |
■ESP8266と1602LCDモジュール端子の接続
| LCDモジュール | ESP8266 |
| VDD | 5V(VU) |
| VSS | GND |
| R0 | 可変抵抗器 |
| RS | D6 |
| RW | GND |
| E | D5 |
| DB4 | D1 |
| DB5 | D2 |
| DB6 | D3 |
| DB7 | D4 |
| A | 5V(VU) |
| K | GND |
LCDモジュールにはDB0~DB7までの8本のデータバスがあります。
ESP8266からLCDに送る1回のデータ量を4ビットまたは8ビットで使うことが出来ます。
今回Arduino IDE標準ライブラリ『LiquidCrystalライブラリ』を使用しますが、データ信号は4ビットと8ビット両方使うことが出来ます。
今回は4ビットでのデータのやり取りで使用します。
4ビットでのデータのやり取りでは上位ビットDB4~DB7での接続となり、2回に別けてデータを送信する形となります。(DB0~DB3は使いません)
とは言っても『LiquidCrystalライブラリ』がこのあたりの処理は代わりにやってくれるので難しいことは考えなくてもできちゃいます!
データ信号ピンDB4~DB7ピン(4本)とRSピン・RWピン・EnableピンをArduinoの適切な位置に接続するだけです。
それぞれのピンはデジタル信号でのやり取りとなります。
LiquidCrystalのダウンロード:
ダウンロード後、下記のところでインストールできます。
#include <LiquidCrystal.h>// LCD ←→ Arduinoのピンの割り当て// rs → D6// rw → GND// enable → D5// d4 → D1// d5 → D2// d6 → D3// d7 → D4// [構文]LiquidCrystal(rs, rw, enable, d0, d1, d2, d3, d4, d5, d6, d7)LiquidCrystal lcd(D6, D5, D1, D2, D3, D4);void setup() {lcd.begin(16, 2); // LCDの桁数と行数を指定する(16桁2行)lcd.clear(); // LCD画面をクリアlcd.setCursor(0, 0); // カーソルの位置を指定lcd.print("Hello!"); // 文字の表示lcd.setCursor(0, 1); // カーソルの位置を指定lcd.print("ESP8266"); // 文字の表示}void loop() {}
■実物イメージ

0 件のコメント:
コメントを投稿