PICマイクロコントローラーでLCD文字ディスプレイを使用することは、やりがいのある体験になる可能性があり、さまざまな組み込みシステムで情報を提示するための簡単な方法を提供します。 LCD文字ディスプレイのサプライヤーとして、基本を理解することから機能的なディスプレイシステムの実装まで、プロセスを案内します。
LCD文字ディスプレイの理解
LCD文字ディスプレイは、単純さとコスト - 有効性のために、組み込みシステムで広く使用されています。それらは、英数字といくつかの特別なシンボルを示すように設計されています。これらのディスプレイには、さまざまなサイズがありますLCDディスプレイ16x1、1つの行で16文字を表示できます。0802 LCDディスプレイ1行あたり8文字と2行で20x2 LCDディスプレイLCDモジュール、2行にわたって20文字あたり20文字を表示できます。
LCD文字ディスプレイの基本コンポーネントには、液晶層、電極、バックライトが含まれます。液晶層は、電界が適用されると光学的特性を変化させ、光を通過させたりブロックしたりして、可視文字を形成します。電極は電界を制御するために使用され、バックライトは視認性を向上させるための照明を提供します。
PICマイクロコントローラーの基本
PICマイクロコントローラーは、低コスト、使いやすさ、幅広い利用可能な周辺機器のために、組み込みシステムの世界で人気があります。それらはマイクロチップテクノロジーによって生産されており、それぞれが異なる機能と機能を備えたさまざまな家族やモデルがあります。
PICマイクロコントローラーを使用したLCD文字ディスプレイをインターフェイスするには、マイクロコントローラーのI/O(入力/出力)ピンを理解する必要があります。これらのピンは、入力または出力のいずれかとして構成でき、マイクロコントローラーとLCDディスプレイ間の信号を送信および受信するために使用できます。
ハードウェア接続
PICマイクロコントローラーでLCD文字ディスプレイを使用する最初のステップは、適切なハードウェア接続を作成することです。典型的な16x2 LCDディスプレイの一般的なガイドです。
- 電源:LCDのVSS(GND)ピンをPICマイクロコントローラーの地面に接続し、VDD(5V)ピンをマイクロコントローラーの5V電源に接続します。 V0ピンはコントラスト調整に使用されます。コントラスト調整は、ポテンショメーターに接続してディスプレイのコントラストを調整できます。
- コントロールピン:RS(Register Select)PINは、LCDの命令レジスタとデータレジスタを選択するために使用されます。 PICマイクロコントローラーの出力ピンに接続します。 RW(読み取り/書き込み)ピンは、読み取り操作と書き込み操作を選択するために使用されます。通常、書き込みのためにそれを地面に接続します - 操作のみ。 E(enable)PINは、データをLCDにラッチするために使用されます。 PICマイクロコントローラーの別の出力ピンに接続します。
- データピン:LCDディスプレイには8つのデータピン(D0 -D7)があります。これらのピンをPICマイクロコントローラーの出力ピンに接続できます。場合によっては、I/Oピンを保存するために、D4 -D7のみが接続されている4ビットモードを使用できます。
テーブル形式のハードウェア接続の簡単な例を次に示します。
| LCDピン | PICマイクロコントローラーピン |
|---|---|
| VSS | GND |
| VDD | 5V |
| V0 | ポテンショメータ |
| Rs | 出力ピン1 |
| RW | GND |
| そして | 出力ピン2 |
| D4 | 出力ピン3 |
| D5 | 出力ピン4 |
| D6 | 出力ピン5 |
| D7 | 出力ピン6 |
ソフトウェアプログラミング
ハードウェア接続を作成した後、PICマイクロコントローラーを使用してLCDディスプレイを制御するソフトウェアを作成する必要があります。以下は、プログラミングの一般的なプロセスです。
-
初期化:LCDを使用する前に、初期化する必要があります。これには、表示モードの設定(8-ビットまたは4-ビットモード、行数、文字フォント)、ディスプレイのクリア、ディスプレイの電源が含まれます。
-
コマンドの送信:カーソルの移動、ディスプレイのクリアなど、コマンドを制御するためにコマンドをLCDに送信します。コマンドを送信するには、RSピンを低(命令レジスタ用)に設定し、適切なコマンドバイトをデータピンに送信します。次に、EピンをパルスしてデータをLCDにラッチします。
-
データの送信:LCDに文字を表示するには、RS PINをHigh(データレジスタ)に設定し、文字のASCIIコードをデータピンに送信します。次に、Eピンをパルスしてデータをラッチします。
16x2 LCDディスプレイを制御するために4ビットモードを使用したPIC16F84AマイクロコントローラーのCのコードの簡単な例を次に示します。


#include <pic.h> #define rs ra0 #define en ra1 #define d4 ra2 #define d5 ra3 #define d6 ra4 #define d7 ra5 void delay_ms(unsigned int ms){unsigned int i、j; for(i = 0; i <ms; i ++)for(j = 0; j <1275; j ++); } void lcd_command(unsigned char cmd){rs = 0; d4 =(cmd >> 4)&0x01; d5 =(cmd >> 5)&0x01; d6 =(cmd >> 6)&0x01; d7 =(cmd >> 7)&0x01; en = 1; delay_ms(1); en = 0; D4 = CMD&0x01; d5 =(cmd >> 1)&0x01; d6 =(cmd >> 2)&0x01; d7 =(cmd >> 3)&0x01; en = 1; delay_ms(1); en = 0; delay_ms(2); } void lcd_data(unsigned char dat){rs = 1; d4 =(dat >> 4)&0x01; d5 =(dat >> 5)&0x01; d6 =(dat >> 6)&0x01; d7 =(dat >> 7)&0x01; en = 1; delay_ms(1); en = 0; d4 = dat&0x01; d5 =(dat >> 1)&0x01; d6 =(dat >> 2)&0x01; d7 =(dat >> 3)&0x01; en = 1; delay_ms(1); en = 0; delay_ms(2); } void lcd_init(){lcd_command(0x33); LCD_Command(0x32); LCD_Command(0x28); lcd_command(0x0c); LCD_Command(0x06); LCD_Command(0x01); delay_ms(2); } void main(){trisa = 0x00; lcd_init(); lcd_data( 'h'); lcd_data( 'e'); lcd_data( 'l'); lcd_data( 'l'); lcd_data( 'o'); while(1); }
トラブルシューティング
PICマイクロコントローラーでLCD文字ディスプレイを使用する場合、いくつかの問題に遭遇する可能性があります。いくつかの一般的な問題と解決策は次のとおりです。
- 表示なし:電源、コントラスト調整、ハードウェア接続を確認します。 LCDが適切に電源を供給し、コントラストが正しく調整され、すべてのピンが適切に接続されていることを確認してください。
- 文字化けされたキャラクター:これは、データの送信が誤っていないか、初期化が誤っていないためです。ソフトウェアコードをチェックして、データが正しく送信され、LCDが適切に初期化されていることを確認してください。
- カーソルが移動しません:カーソルの動きについては、LCDに送信されたコマンドを確認してください。正しいコマンドがLCDの命令登録簿に送信されることを確認してください。
結論
PICマイクロコントローラーでLCD文字ディスプレイを使用することは、実用的で興味深いプロジェクトです。ハードウェアの接続とソフトウェアプログラミングを理解することにより、有用な情報を表示できるさまざまな組み込みシステムを作成できます。 LCD文字ディスプレイのサプライヤーとして、私たちは幅広い高品質のディスプレイを含む幅広い高品質のディスプレイを提供しますLCDディスプレイ16x1、0802 LCDディスプレイ、 そして20x2 LCDディスプレイLCDモジュール。当社の製品の購入に興味がある場合、またはマイクロコントローラーでLCDディスプレイの使用について質問がある場合は、さらに調達ディスカッションについてお気軽にお問い合わせください。
参照
- マイクロチップテクノロジー。 PIC16F84Aデータシート。
- Hitachi HD44780U LCDコントローラーデータシート。
