Lcd12864はじめに
漢字ライブラリを備えた128X64は、4桁/ 8ビットパラレル、2線式または3線式シリアルインターフェイス、および中国語のGB級の第1レベルおよび第2レベルの簡体字中国語フォントを備えたドットマトリックスグラフィックLCDモジュールです。 料金は128&TImesです。 64、8192 16 * 16ドットの中国語文字、および128 16 * 8ドットASCII文字セット。 このモジュールの柔軟なインタフェース方法と簡単で便利な操作手順を使用すると、完全な中国のヒューマン・コンピュータ・インタラクション・グラフィカル・インタフェースを構成することができます。 8&TImesを表示できます。 16&TImesの4行; 16ラティス文字。 グラフィック表示も完了することができます。 低電圧および低電力消費は別の重要な特徴である。 このモジュールで構成された液晶表示方式は、ハードウェアの回路構成や表示プログラムにかかわらず、同種のグラフィックドットマトリクス液晶表示モジュールよりもはるかに簡単であり、モジュールの価格も同じドットマトリクスのグラフィック液晶モジュールである。 。
Lcd12864基本特性パラメータ

(1)低電源電圧(VDD:+ 3.0V〜+ 5.5V)
(2)ディスプレイ解像度:128&TImes; 64ポイント
(3)8192 16×16格子中国語文字(簡体字および繁体字)を提供する漢字ライブラリの内蔵
(4)128×16ドットマトリクス文字を内蔵
(5)2MHzクロック周波数
(6)表示モード:STN、半透明、正表示
(7)ドライブ:1/32 DUTY、1/5 BIAS
(8)視線方向:6ポイント
(9)バックライトモード:サイドハイライト白色LED、消費電力は一般的なLEDの1 / 5-1 / 10のみです
(10)通信:シリアルおよびパラレル
(11)外部負圧のない内蔵DC-DC変換回路
(12)チップセレクト信号なしでソフトウェア設計を簡素化
(13)動作温度:0℃〜+ 55℃、保管温度:-20℃〜+ 60℃
Lcd12864ピン図と機能
Lcd12864中国語のデータ概要(12864ピンの説明と機能_特性パラメータとドライバの共有)
1VSSモジュール電源グランド
モジュールの2VDD電源正端子
3V0-LCD駆動電圧入力
4RS(CS)H / Lパラレル命令/データ選択信号; シリアルチップセレクト信号
5R / W(SID)H / Lパラレルリード/ライト選択信号。 シリアルデータポート
6E(CLK)H / Lパラレルイネーブル信号。 シリアル同期クロック
7DB0H / Lデータ0
8DB1H / Lデータ1
9DB2H / Lデータ2
10DB3H / Lデータ3
11DB4H / Lデータ4
12DB5H / Lデータ5
13DB6H / Lデータ6
14DB7H / Lデータ7
15PSBH / Lパラレル/シリアルインタフェース選択:Hパラレル。 L-シリアル
16NC空の足
17 / RETH / Lリセットアクティブロー
18NC空の足
19LED_A(LED + 5V)ポジティブバックライト
20LED_K(LED-OV)バックライトとネガ
コントローラインタフェースの信号説明
1、RS、R / Wを選択すると、次の4つのモードが決まります。
Lcd12864中国語のデータ概要(12864ピンの説明と機能_featuresパラメータとドライバの共有)
2、E信号
Lcd12864中国語のデータ概要(12864ピンの説明と機能_特性パラメータとドライバの共有)
●Busy flag:BFBFフラグは内部動作条件を提供します。 BF = 1は、モジュールが内部操作を実行していることを示します。 現時点では、モジュールは外部の命令とデータを受け入れません。 BF = 0の場合、モジュールはいつでも外部命令とデータを受け入れる準備ができています。 STATUSRD命令を使用すると、BFをDB7バスに読み取ってモジュールの動作状態を確認することができます。
●フォント生成ROM(CGROM)フォント生成ROM(CGROM)が提供する8192このトリガは、モジュールのオンスクリーン表示を制御するために使用されます。 DFF = 1はDISPLAY ON、DDRAMコンテンツは画面に表示、DFF = 0はDISPLAY OFFです。 DFFのステータスは、DISPLAYON / OFFおよびRST信号のコマンドによって制御されます。
●表示データRAM(DDRAM)モジュールの内部表示データRAMは、表示データRAMに書き込まれると、中国語フォント表示で16ワード(64ワード)の最大4行、64バイトのスペースを提供し、CGROMのフォントを表示しますそれぞれCGRAMとする。 このモジュールは半角英数字(16 * 8)、CGRAMフォント、CGROMの中国語フォントの3種類のフォントを表示できます。 3つのフォントの選択は、DDRAMに基づいています。 中国語で書かれた符号化オプションでは、0000H-0006H(符号はそれぞれ0000、0002、0004、0006)の符号化でCGRAMのカスタムフォントが選択され、半角英数字は02H-7FHエンコーディング。 A1より上のコードのフォントは自動的に次のバイトと組み合わされ、2バイトのエンコーディングは中国文字コードBIG5(A140-D75F)、GB(A1A0-F7FFH)を形成します。
●CGRAM(フォント生成RAM)フォント生成RAMは、16×16ポイントのカスタム画像空間を4つのグループに分けることができる画像定義(ワード構築)機能を提供します。 ユーザーは、内部フォントで提供されていないイメージ文字を提供することができます。 タイプはCGRAMに自己定義され、CGROMで定義されているようにDDRAMを介して画面に表示することができます。
●アドレスカウンタACアドレスカウンタは、DDRAM / CGRAMの1つのアドレスを格納するために使用されます。 設定命令レジスタで変更できます。 その後、DDRAM / CGRAMの値が読み書きされる限り、アドレスカウンタの値は自動的に1になります。 RSが "0"かつR / Wが "1"のとき、アドレスカウンタの値がDB6-DB0に読み込まれます。
カーソル/フリッカ制御回路
このモジュールは、DDRAMのカーソルまたは点滅位置をアドレスカウンタの値で指定するハードウェアカーソルとフリッカ制御回路を提供します。
Lcd12864命令
Lcd12864中国語のデータ概要(12864ピンの説明と機能_特性パラメータとドライバの共有)
Lcd12864中国語のデータ概要(12864ピンの説明と機能_featuresパラメータとドライバの共有)
注:IC1が命令を受け入れる前に、マイクロプロセッサーはまず、内部がオフビジー状態であることを確認する必要があります。 BFフラグを読み取るときは、新しい命令を受け入れるにはBFがゼロでなければなりません。 命令を送信する前にチェックされていない場合は、BFフラグを前の命令と命令の間の長い時間延長する必要があります。つまり、前の命令が実行されるのを待つ必要があります。
Lcd12864アプリケーションの例
1.使用前の準備:まずモジュールに使用電圧を印加し、下図の接続方法に従ってLCDのコントラストを調整し、黒い下の画像を表示させます。 このプロセスは、最初にLCDセグメントが欠落しているかどうかを検出することもできます。
2.文字表示:128X64-0402Bは中国語の文字ライブラリーで、4行8列の32文字と1画面16 16ドット行列を表示できます。 各表示RAMは、1漢字または2 16×8格子完全高さを表示することができます。 ASCII文字で、1画面につき最大32文字または64 ASCII文字を表示できます。 128X64-0402Bの中国語フォントライブラリは、内部で128 x 2バイト文字表示RAMバッファ(DDRAM)を提供します。 文字表示は、文字表示RAMに文字表示コードを書き込むことによって達成される。 筆記内容に応じて、CGROM(中国語フォントライブラリ)、HCGROM(ASCIIフォントフォント)、CGRAM(カスタムフォント)の内容をLCD画面に表示することができます。 3種類の文字/フォント選択コード範囲:0000〜0006H(コードは0000,0002,0004,0006合計4)表示カスタムフォント、02H〜7FH半角のASCIIコード文字を表示、A1A0H〜F7FFHは8192GB2312フォントを表示フォント。 文字は、液晶モジュールのRAMのアドレス80H〜9FHを示します。 文字によって表示されるRAMのアドレスは、32文字の表示領域と1対1に対応しています。 対応関係を次の表に示します。
Lcd12864中国語のデータ概要(12864ピンの説明と機能_特性パラメータとドライバの共有)
3、グラフィック表示
最初に垂直アドレスを設定し、次に水平アドレスを設定します(2バイトのデータを書き込んで垂直座標と水平座標アドレスを完成させます)
垂直アドレス範囲AC5。 .AC0
水平アドレス範囲AC3 ... AC0
描画RAMのアドレスカウンタ(AC)は自動的に水平アドレス(X軸)を増加させます。 水平アドレス= 0FHのときは00Hにリセットされますが、垂直アドレスは自動的に1増加しません。 したがって、アドレスが連続して書き込まれるとき、複数のドキュメントが利用可能な場合、プログラムは垂直アドレスをリセットする必要があるかどうかを判断する必要があります。 GDRAMの座標アドレスとデータの配置順序は次のとおりです。
4、アプリケーションの説明
中国フォントライブラリで128X64ディスプレイモジュールを使用する場合は、次の点に注意してください。
1漢字を特定の位置に表示する場合は、最初に表示文字の位置を設定する、つまり表示アドレスを最初に設定し、次に漢字コードを書き込む必要があります。
2 ASCII文字を表示するプロセスは、中国語を表示するプロセスと同じです。 ただし、連続した文字を表示する場合は、表示アドレスを1回だけ設定する必要があります。 モジュールは自動的に1を次の文字位置に追加します。 それ以外の場合、表示される文字は空のASCII文字の位置になります。
3文字コードが2バイトの場合、最初に上位バイト、次に下位バイトを書き込む必要があります。
4モジュールが命令を受信する前に、プロセッサはまずモジュールが不安定な状態にあることを確認する必要があります。 すなわち、BFフラグが読み出されるとき、新しい命令を受け入れるためにはBFが "0"でなければならない。 命令を送る前にBFフラグがチェックされていない場合、前の命令と命令との間に長い時間遅延されなければならない。すなわち、前の命令が実行が完了したと判断するのを待つ。 命令実行時間については、命令表の命令実行時間の説明を参照してください。 5 "RE"は基本命令セットと拡張命令セットの選択制御ビットです。 "RE"ビットが変更された場合、次の命令セットは "RE"ビットが再び変更されない限り、最後の状態のままになります。 同じ命令セットを使用する場合、毎回 "RE"ビットをリセットする必要はありません。
Lcd12864ドライバ
/ ************************************************** *************************** /
/ * * /
/ * Copyright(c)2012、pcwebmaster * /
/* 全著作権所有。 * /
/ * * /
/ * Email:pcwebmaste@163.com * /
/ * * /
/ ************************************************** *************************** /
/ ************************************************** *************************** /
/ *ファイル名:LCD12864.c * /
/ *バージョン:バージョン1.0 * /
/ *説明:LCDとMCU間の通信プロトコルを実現し、コンピュータから発行されたコマンドに基づいて人間とコンピュータのインタラクションを実行* /
/ *プロデューサ:pcwebmaste * /
/* 関数: */
/ * LCD12864_init * /
/ * LCD12864WriteCommand * /
/ * LCD12864WriteByte * /
/ * LCD12864_init * /
/ * LCD12864SetXY * /
/ * LCD12864PrintfString * /
/ *履歴レコード:* /
/ * pcwebmaste 2008-07-10 Creat Initalバージョン。 (バージョン1.0)* /
/ * Modular 2012-06-02 Creat Initalバージョン。 (バージョン2.0)* /
/ ************************************************** *************************** /
#include "12864.h"
#define LOW 0
#define HIGH 1
Sビットウェラ= P2 ^ 6;
Sbit dula = P2 ^ 7;
#define LCD12864_RS(x){if((x))P3 | = 1 "LCD12864_RS_PIN; \
Else P3&=〜(1 "LCD12864_RS_PIN);} //選択入力を登録する
#define LCD12864_RW(x){if((x))P3 | = 1 "LCD12864_RW_PIN; \
Else P3&=〜(1 "LCD12864_RW_PIN);} // LCDの読み書き制御
#define LCD12864_EN(x){if((x))P3 | = 1 "LCD12864_EN_PIN; \
Else P3&=〜(1 "LCD12864_EN_PIN);} // LCDイネーブル制御
#define LCD12864_MD(x){if((x))P3 | = 1 "LCD12864_MD_PIN; \
その他のP3&=〜(1 "LCD





