●Arduinoで1602 LCDを使う

だいぶ古い1602LCDとArduinoを接続します。
今販売されている新しい1602LCDでも接続方法は同じです。

裏面



■Arduinoと1602 LCDの接続

Voにはコントラスト調整用の10KΩぐらいの可変抵抗を取り付けて可変抵抗のもう一方の線はArduinoのGNDに接続します。
これが無いとコントラストが無いため文字が見えません。

LEDバックライトの必要なLCDの場合にはAには200Ωぐらいの電流制限抵抗を取り付けてプラスの5Vに、KはマイナスのGNDに接続します。
そして、重要なのが、LCDのRWをArduinoのGNDに接続して常に書き込みモードにする事です。
あと、LCDの電源のVddはプラスであるArduinoの5Vに、 VssはArduinoのGNDに接続しますが、間違えると一瞬で壊れます。

Arduinoとは4bitモードで接続しますので通信に使用するのはLCDのRS, E, DB4, DB5, DB6, DB7の6本のピンです。
この6本のピンはデジタルピンのどこの場所に接続しようとも、プログラムで指定するだけで動作します。

とりあえず、このように接続しました。

LCDのDB4とデジタルピンの4番
LCDのDB5とデジタルピンの5番
LCDのDB6とデジタルピンの6番
LCDのDB7とデジタルピンの7番
LCDの RSとデジタルピンの8番
LCDの E とデジタルピンの9番

接続先を変更した場合にはプログラムの指定を変更する必要があります。

以上で接続完了です。
LCDの RS E DB4 DB5 DB6 DB7 Vdd Vss Vo A K RW の12本のLCDのピンに対してなんらかの操作が必要で配線が複雑になります。
もっとシンプルに接続を解決したいのならば、
Arduinoで1602 I2C液晶モジュールを使う
この方法を使えば4本の線を接続するのみでLCDのが利用できます。


■ライブラリの準備

Arduino IDE標準のLiquidCrystalライブラリを使いますので最初からインストールされており、なにも操作する必要は無かったです。


探したらBuilt-In by Arduinoと書かれており最初からインストールされていました。


■動作させるプログラム

#include <LiquidCrystal.h>

LiquidCrystal lcd( 8, 9, 4, 5, 6, 7);

void setup() {
  lcd.begin( 16, 2 );
  lcd.clear();

  lcd.setCursor(0, 0);
  lcd.print("abc");
  lcd.setCursor(3, 1);
  lcd.print("DEF");
}

void loop() {

}

LCDの線の接続先を指定している部分をプログラム中で赤文字で表しています。

LiquidCrystal lcd( [RS], [E], [DB4], [DB5], [DB6], [DB7] )

このようにLCDの接続先デジタルピン番号を設定する必要があります。
上記のプログラムを実行すると、LCDに文字が現れます。



文字の表示は出来ましたが数字が表示できないと意味がありません。
数字を表示する方法はこちらへ


▲トップページ > マイコンなど