コンピュータ、計算機、テレビ、携帯電話、デジタル腕時計は時間を表示するのに種類の表示を使用する。液晶は、可視画像を生成するために液晶を使用する電子表示モジュールです。
液晶は、可視画像を生成するために電子表示モジュールです。
液晶は、 16×2LCD表示はDIYsおよび回路で一般的な非常に基本的なモジュールです。 The 16×2 translates o a display 16 characters per line in 2 such lines. In this LCD each character is displayed in a 5×7 pixel matrix.
16X2 LCD pinout diagram
Pin No. |
Function |
Name |
1 |
Ground (0V) |
Ground |
2 |
Supply voltage; 5V (4.7V – 5.3V) |
Vcc |
3 |
Contrast adjustment; the best way is to use a variable resistor such as a potentiometer. The output of the potentiometer is connected to this pin. ポテンショメータのノブを前後に回転させて、LCDコントラストを調整します。/td> |
Vo/VEE |
4 | ロー時にコマンドレジスタを選択し、ハイ時にデータレジスタを選択します | RS(レジスタ選択) |
5 | レジスタに書き込むにはロー、レジスタから読み取るにはハイ | 読み取り/書き込み |
6 | 低い脈拍は与えられます; 命令を実行するには余分な電圧プッシュが必要であり、この目的のためにEN(イネーブル)信号が使用されます。 通常、en=0を設定しますが、命令を実行したいときは、数ミリ秒の間en=1を高くします。 この後、我々は再びそれを接地させる、すなわち、en=0である。 | Enable |
7 | 8-bit data pins | DB0 |
8 | DB1 | |
9 | DB2 | |
10 | DB3 | |
11 | DB4 | |
12 | DB5 | |
13 | DB6 | |
14 | DB7 | |
15 | ||
16 | Led- |
rs(レジスタ選択)
16x2lcdには、コマンドとデータの二つのレジスタがあります。 レジスタ選択は、あるレジスタから別のレジスタに切り替えるために使用されます。 コマンド-レジスタではRS=0、データ-レジスタではRS=1です。
コマンド-レジスタ:コマンド-レジスタには、LCDに与えられたコマンド命令が格納されます。 コマンドは、事前定義されたタスクを実行するためにLCDに与えられる命令です。 次のような例:
- 初期化
- 画面のクリア
- カーソル位置の設定
- 表示の制御など。
コマンドの処理はコマンドレジスタで行われます。
データ-レジスタ:データ-レジスタには、LCDに表示するデータが格納されます。 データは、LCDに表示される文字のASCII値です。 LCDにデータを送信すると、データレジスタに移動し、そこで処理されます。 RS=1のとき、データ-レジスタが選択されます。
Important command codes for LCD
Sr.No. | Hex Code | Command to LCD instruction Register |
1 | 01 | Clear display screen |
2 | 02 | Return home |
3 | 04 | Decrement cursor (shift cursor to left) |
4 | 06 | Increment cursor (shift cursor to right) |
5 | 05 | Shift display right |
6 | 07 | Shift display left |
7 | 08 | Display off, cursor off |
8 | 0A | Display off, cursor on |
9 | 0C | Display on, cursor off |
10 | 0E | Display on, cursor blinking |
11 | 0F | Display on, cursor blinking |
12 | 10 | Shift cursor position to left |
13 | 14 | Shift cursor position to right |
14 | 18 | Shift the entire display to the left |
15 | 1C | Shift the entire display to the right |
16 | 80 | Force cursor to beginning ( 1st line) |
17 | C0 | Force cursor to beginning ( 2nd line) |
18 | 38 | 2 lines and 5×7 行列 |
16X2LCDにカスタム文字を表示する
LCDにカスタム文字を生成することはあまり難しくありません。 それはLCDおよびLCDの破片のコントローラーの注文の発生させたランダムアクセスの記憶(CG-RAM)についての知識を要求する。 ほとんどのLCDsは日立HD4478のコントローラーを含んでいます。CG-RAMは、カスタム文字を作成する際の主要なコンポーネントです。 コードで宣言されたカスタム文字を格納します。 CG-RAMのサイズは64バイトで、一度に八文字を作成するオプションを提供します。 各文字のサイズは8バイトです。CG-RAMアドレスは0x40(16進数)または64(10進数)から始まります。 これらのアドレスでカスタム文字を生成できます。 これらのアドレスに文字を生成したら、LCDにコマンドを送信するだけで文字を印刷できます。 文字アドレスと印刷コマンドは以下の通りです。
上の表では、印刷コマンドで各文字の開始アドレスを見ることができます。最初の文字はアドレス0x40から0x47で生成され、コマンド0を送信するだけでLCDに出力されます。
2番目の文字は、アドレス0x48から0x55に生成され、コマンド1を送信することによって出力されます。
CG-RAMでカスタム文字を生成する方法
LCDディスプレイでは、各文字は5×8行列になります。 ここで、5は列の数、8は行の数です。ここでは、CG-RAMで文字’b’を作成する方法の簡単な例です。’b’を生成するための配列はchar b={0x10,0x10,0x16,0x19,0x11,0x11,0x1e}です。; つまり、
- 文字を作成するアドレスを送信します。
- 今、このアドレスであなたのキャラクターを作成します。 上記で定義した’b’文字配列の値をLCDのデータレジスタに一つずつ送信します。
- 生成された文字を0x40に印刷します。 コマンド0をLCDのコマンド-レジスタに送信します。 以下の表は、これをより明確に説明するでしょう
Arduinoと16X2LCDをインターフェイスさせる
LCDモジュー Arduinoとのインターフェイスにより、プログラマはコードを簡単にカスタマイズする自由度が高くなります。 Arduinoボード、16X2のLCDディスプレイ、ジャンパー線、ブレッドボードは、回路を構築するのに十分です。 以下のLCDディスプレイへのArduinoのインターフェイス。
16X2LCDとArduinoのソースコード。
16×2LCDにLEDの明るさを表示
LCDとArduinoの組み合わせは、いくつかのプロジェクトをもたらし、最も簡単なものはLEDの明るさを表示するLCDで この回路に必要なのは、LCD、Arduino、ブレッドボード、抵抗器、ポテンショメータ、LED、およびいくつかのジャンパーケーブルだけです。 回路の接続は以下の通りです。
詳細なプロジェクトは、LCDディスプレイにLEDの明るさを表示することで利用可能です
この記事は21November2016に最初に公開された。2020年7月31日に更新されました。