12864液晶中文资料JHD529m1
| ? ? |
一、 概述 ??
二、 帶中文字庫的128X64是一種具有4位/8位并行、2線或3線串行多種接口方式,內部含有國標一級、二級簡體中文字庫的點陣圖形液晶顯示模塊;其顯示分辨率為128×64, 內置8192個16*16點漢字,和128個16*8點ASCII字符集.利用該模塊靈活的接口方式和簡單、方便的操作指令,可構成全中文人機交互圖形界面。可以顯示8×4行16×16點陣的漢字. 也可完成圖形顯示.低電壓低功耗是其又一顯著特點。由該模塊構成的液晶顯示方案與同類型的圖形點陣液晶顯示模塊相比,不論硬件電路結構或顯示程序都要簡潔得多,且該模塊的價格也略低于相同點陣的圖形液晶模塊。
三、 基本特性:
(1)、低電源電壓(VDD:+3.0--+5.5V)(2)、顯示分辨率:128×64點 (3)、內置漢字字庫,提供8192個16×16點陣漢字(簡繁體可選) (4)、內置 128個16×8點陣字符 (5)、2MHZ時鐘頻率 (6)、顯示方式:STN、半透、正顯 (7)、驅動方式:1/32DUTY,1/5BIAS (8)、視角方向:6點 (9)、背光方式:側部高亮白色LED,功耗僅為普通LED的1/5—1/10 (10)、通訊方式:串行、并口可選 (11)、內置DC-DC轉換電路,無需外加負壓 (12)、無需片選信號,簡化軟件設計(13)、工作溫度: 0℃ - +55℃ ,存儲溫度: -20℃ - +60℃
模塊接口說明:
*注釋1:如在實際應用中僅使用串口通訊模式,可將PSB接固定低電平,也可以將模塊上的J8和“GND”用焊錫短接。
*注釋2:模塊內部接有上電復位電路,因此在不需要經常復位的場合可將該端懸空。
*注釋3:如背光和模塊共用一個電源,可以將模塊上的JA、JK用焊錫短接。
2.2并行接口
| ? 管腳號 ? | ? 管腳名稱 ? | ? 電平 ? | ? 管腳功能描述 ? |
| ? 1 ? | ? VSS ? | ? 0V ? | ? 電源地 ? |
| ? 2 ? | ? VCC ? | ? 3.0+5V ? | ? 電源正 ? |
| ? 3 ? | ? V0 ? | ? - ? | ? 對比度(亮度)調整 ? |
| ? 4 ? | ? RS(CS) ? | ? H/L ? | ? RS=“H”,表示DB7——DB0為顯示數據 RS=“L”,表示DB7——DB0為顯示指令數據 ? |
| ? 5 ? | ? R/W(SID) ? | ? H/L ? | ? R/W=“H”,E=“H”,數據被讀到DB7——DB0 R/W=“L”,E=“H→L”, DB7——DB0的數據被寫到IR或DR ? |
| ? 6 ? | ? E(SCLK) ? | ? H/L ? | ? 使能信號 ? |
| ? 7 ? | ? DB0 ? | ? H/L ? | ? 三態數據線 ? |
| ? 8 ? | ? DB1 ? | ? H/L ? | ? 三態數據線 ? |
| ? 9 ? | ? DB2 ? | ? H/L ? | ? 三態數據線 ? |
| ? 10 ? | ? DB3 ? | ? H/L ? | ? 三態數據線 ? |
| ? 11 ? | ? DB4 ? | ? H/L ? | ? 三態數據線 ? |
| ? 12 ? | ? DB5 ? | ? H/L ? | ? 三態數據線 ? |
| ? 13 ? | ? DB6 ? | ? H/L ? | ? 三態數據線 ? |
| ? 14 ? | ? DB7 ? | ? H/L ? | ? 三態數據線 ? |
| ? 15 ? | ? PSB ? | ? H/L ? | ? H:8位或4位并口方式,L:串口方式(見注釋1) ? |
| ? 16 ? | ? NC ? | ? - ? | ? 空腳 ? |
| ? 17 ? | ? /RESET ? | ? H/L ? | ? 復位端,低電平有效(見注釋2) ? |
| ? 18 ? | ? VOUT ? | ? - ? | ? LCD驅動電壓輸出端 ? |
| ? 19 ? | ? A ? | ? VDD ? | ? 背光源正端(+5V)(見注釋3) ? |
| ? 20 ? | ? K ? | ? VSS ? | ? 背光源負端(見注釋3) ? |
*注釋1:如在實際應用中僅使用并口通訊模式,可將PSB接固定高電平,也可以將模塊上的J8和“VCC”用焊錫短接。
*注釋2:模塊內部接有上電復位電路,因此在不需要經常復位的場合可將該端懸空。??
*注釋3:如背光和模塊共用一個電源,可以將模塊上的JA、JK用焊錫短接。四.模塊主要硬件構成說明
控制器接口信號說明:
1、RS,R/W的配合選擇決定控制界面的4種模式:
| ? RS ? | ? R/W ? | ? 功能說明 ? |
| ? L ? | ? L ? | ? MPU寫指令到指令暫存器(IR) ? |
| ? L ? | ? H ? | ? 讀出忙標志(BF)及地址記數器(AC)的狀態 ? |
| ? H ? | ? L ? | ? MPU寫入數據到數據暫存器(DR) ? |
| ? H ? | ? H ? | ? MPU從數據暫存器(DR)中讀出數據 ? |
2、E信號
| ? E狀態 ? | ? 執行動作 ? | ? 結果 ? |
| ? 高——>低 ? | ? I/O緩沖——>DR ? | ? 配合/W進行寫數據或指令 ? |
| ? 高 ? | ? DR——>I/O緩沖 ? | ? 配合R進行讀數據或指令 ? |
| ? 低/低——>高 ? | ? 無動作 ? | ? ? |
● 忙標志:BF??? BF標志提供內部工作情況.BF=1表示模塊在進行內部操作,此時模塊不接受外部指令和數據.BF=0時,模塊為準備狀態,隨時可接受外部指令和數據.利用STATUS RD 指令,可以將BF讀到DB7總線,從而檢驗模塊之工作狀態.
● 字型產生ROM(CGROM)??? 字型產生ROM(CGROM)提供8192個此觸發器是用于模塊屏幕顯示開和關的控制。DFF=1為開顯示(DISPLAY ON),DDRAM 的內容就顯示在屏幕上,DFF=0為關顯示(DISPLAY OFF)。DFF 的狀態是指令DISPLAY ON/OFF和RST信號控制的。
● 顯示數據RAM(DDRAM)模塊內部顯示數據RAM提供64×2個位元組的空間,最多可控制4行16字(64個字)的中文字型顯示,當寫入顯示數據RAM時,可分別顯示CGROM與CGRAM的字型;此模塊可顯示三種字型,分別是半角英數字型(16*8)、CGRAM字型及CGROM的中文字型,三種字型的選擇,由在DDRAM中寫入的編碼選擇,在0000H—0006H的編碼中(其代碼分別是0000、0002、0004、0006共4個)將選擇CGRAM的自定義字型,02H—7FH的編碼中將選擇半角英數字的字型,至于A1以上的編碼將自動的結合下一個位元組,組成兩個位元組的編碼形成中文字型的編碼BIG5(A140—D75F),GB(A1A0-F7FFH)。??
● 字型產生RAM(CGRAM)??? 字型產生RAM提供圖象定義(造字)功能, 可以提供四組16×16點的自定義圖象空間,使用者可以將內部字型沒有提供的圖象字型自行定義到CGRAM中,便可和CGROM中的定義一樣地通過DDRAM顯示在屏幕中。
● 地址計數器AC地址計數器是用來貯存DDRAM/CGRAM之一的地址,它可由設定指令暫存器來改變,之后只要讀取或是寫入DDRAM/CGRAM的值時,地址計數器的值就會自動加一,當RS為“0”時而R/W為“1”時,地址計數器的值會被讀取到DB6——DB0中。
光標/閃爍控制電路
??? 此模塊提供硬體光標及閃爍控制電路,由地址計數器的值來指定DDRAM中的光標或閃爍位置。
五、指令說明
模塊控制芯片提供兩套控制命令,基本指令和擴充指令如下:
指令表1:(RE=0:基本指令)
| ? 指 ? | ? ????????????????? 指 令 碼 ? | ? 功 能 ? | |||||||||
| ? 令 ? | ? RS ? | ? R/W ? | ? D7 ? | ? D6 ? | ? D5 ? | ? D4 ? | ? D3 ? | ? D2 ? | ? D1 ? | ? D0 ? | ? ? |
| ? 清除 顯示 ? | ? 0 ? | ? 0 ? | ? 0 ? | ? 0 ? | ? 0 ? | ? 0 ? | ? 0 ? | ? 0 ? | ? 0 ? | ? 1 ? | ? 將DDRAM填滿"20H",并且設定DDRAM的地址計數器(AC)到"00H" ? |
| ? 地址 歸位 ? | ? 0 ? | ? 0 ? | ? 0 ? | ? 0 ? | ? 0 ? | ? 0 ? | ? 0 ? | ? 0 ? | ? 1 ? | ? X ? | ? 設定DDRAM的地址計數器(AC)到"00H",并且將游標移到開頭原點位置;這個指令不改變DDRAM 的內容 ? |
| ? 顯示狀態開/關 ? | ? 0 ? | ? 0 ? | ? 0 ? | ? 0 ? | ? 0 ? | ? 0 ? | ? 1 ? | ? D ? | ? C ? | ? B ? | ? D=1: 整體顯示 ON C=1: 游標ON???? B=1:游標位置反白允許 ? |
| ? 進入點 設定 ? | ? 0 ? | ? 0 ? | ? 0 ? | ? 0 ? | ? 0 ? | ? 0 ? | ? 0 ? | ? 1 ? | ? I/D ? | ? S ? | ? 指定在數據的讀取與寫入時,設定游標的移動方向及指定顯示的移位 ? |
| ? 游標或顯示移位控制 ? | ? 0 ? | ? 0 ? | ? 0 ? | ? 0 ? | ? 0 ? | ? 1 ? | ? S/C ? | ? R/L ? | ? X ? | ? X ? | ? 設定游標的移動與顯示的移位控制位;這個指令不改變DDRAM 的內容 ? |
| ? 功能 設定 ? | ? 0 ? | ? 0 ? | ? 0 ? | ? 0 ? | ? 1 ? | ? DL ? | ? X ? | ? RE ? | ? X ? | ? X ? | ? DL=0/1:4/8位數據 RE=1: 擴充指令操作 RE=0: 基本指令操作 ? |
| ? 設定CGRAM 地址 ? | ? 0 ? | ? 0 ? | ? 0 ? | ? 1 ? | ? AC5 ? | ? AC4 ? | ? AC3 ? | ? AC2 ? | ? AC1 ? | ? AC0 ? | ? 設定CGRAM 地址 ? |
| ? 設定DDRAM 地址 ? | ? 0 ? | ? 0 ? | ? 1 ? | ? 0 ? | ? AC5 ? | ? AC4 ? | ? AC3 ? | ? AC2 ? | ? AC1 ? | ? AC0 ? | ? 設定DDRAM 地址(顯示位址) 第一行:80H-87H 第二行:90H-97H ? |
| ? 讀取忙標志和地址 ? | ? 0 ? | ? 1 ? | ? BF ? | ? AC6 ? | ? AC5 ? | ? AC4 ? | ? AC3 ? | ? AC2 ? | ? AC1 ? | ? AC0 ? | ? 讀取忙標志(BF)可以確認內部動作是否完成,同時可以讀出地址計數器(AC)的值 ? |
| ? 寫數據到RAM ? | ? 1 ? | ? 0 ? | ? 數據 ? | ? 將數據D7——D0寫入到內部的RAM (DDRAM/CGRAM/IRAM/GRAM) ? | |||||||
| ? 讀出RAM的值 ? | ? 1 ? | ? 1 ? | ? 數據 ? | ? 從內部RAM讀取數據D7——D0 (DDRAM/CGRAM/IRAM/GRAM) ? | |||||||
指令表2:(RE=1:擴充指令)
| ? 指 ? | ? ????????????????? 指 令 碼 ? | ? 功 能 ? | |||||||||
| ? 令 ? | ? RS ? | ? R/W ? | ? D7 ? | ? D6 ? | ? D5 ? | ? D4 ? | ? D3 ? | ? D2 ? | ? D1 ? | ? D0 ? | ? ? |
| ? 待命 模式 ? | ? 0 ? | ? 0 ? | ? 0 ? | ? 0 ? | ? 0 ? | ? 0 ? | ? 0 ? | ? 0 ? | ? 0 ? | ? 1 ? | ? 進入待命模式,執行其他指令都棵終止 待命模式 ? |
| ? 卷動地址開關開啟 ? | ? 0 ? | ? 0 ? | ? 0 ? | ? 0 ? | ? 0 ? | ? 0 ? | ? 0 ? | ? 0 ? | ? 1 ? | ? SR ? | ? SR=1:允許輸入垂直卷動地址 SR=0:允許輸入IRAM和CGRAM地址 ? |
| ? 反白 選擇 ? | ? 0 ? | ? 0 ? | ? 0 ? | ? 0 ? | ? 0 ? | ? 0 ? | ? 0 ? | ? 1 ? | ? R1 ? | ? R0 ? | ? 選擇2行中的任一行作反白顯示,并可決定反白與否。初始值R1R0=00,第一次設定為反白顯示,再次設定變回正常 ? |
| ? 睡眠 模式 ? | ? 0 ? | ? 0 ? | ? 0 ? | ? 0 ? | ? 0 ? | ? 0 ? | ? 1 ? | ? SL ? | ? X ? | ? X ? | ? SL=0:進入睡眠模式 SL=1:脫離睡眠模式 ? |
| ? 擴充 功能 設定 ? | ? 0 ? | ? 0 ? | ? 0 ? | ? 0 ? | ? 1 ? | ? CL ? | ? X ? | ? RE ? | ? G ? | ? 0 ? | ? CL=0/1:4/8位數據 RE=1: 擴充指令操作 RE=0: 基本指令操作 G=1/0:繪圖開關 ? |
| ? 設定繪圖RAM 地址 ? | ? 0 ? | ? 0 ? | ? 1 ? | ? 0 AC6 ? | ? 0 AC5 ? | ? 0 AC4 ? | ? AC3 AC3 ? | ? AC2 AC2 ? | ? AC1 AC1 ? | ? AC0 AC0 ? | ? 設定繪圖RAM 先設定垂直(列)地址AC6AC5…AC0 再設定水平(行)地址AC3AC2AC1AC0 將以上16位地址連續寫入即可 ? |
備注:當IC1在接受指令前,微處理器必須先確認其內部處于非忙碌狀態,即讀取BF標志時,BF需為零,方可接受新的指令;如果在送出一個指令前并不檢查BF標志,那么在前一個指令和這個指令中間必須延長一段較長的時間,即是等待前一個指令確實執行完成。
應用舉例:
1、使用前的準備:先給模塊加上工作電壓,再按照下圖的連接方法調節LCD的對比度,使其顯示出黑色的底影。此過程亦可以初步檢測LCD有無缺段現象。
2、字符顯示:帶中文字庫的128X64-0402B每屏可顯示4行8列共32個16×16點陣的漢字,每個顯示RAM可顯示1個中文字符或2個16×8點陣全高ASCII碼字符,即每屏最多可實現32個中文字符或64個ASCII碼字符的顯示。帶中文字庫的128X64-0402B內部提供128×2字節的字符顯示RAM緩沖區(DDRAM)。字符顯示是通過將字符顯示編碼寫入該字符顯示RAM實現的。根據寫入內容的不同,可分別在液晶屏上顯示CGROM(中文字庫)、HCGROM(ASCII碼字庫)及CGRAM(自定義字形)的內容。三種不同字符/字型的選擇編碼范圍為:0000~0006H(其代碼分別是0000、0002、0004、0006共4個)顯示自定義字型,02H~7FH顯示半寬ASCII碼字符,A1A0H~F7FFH顯示8192種GB2312中文字庫字形。字符顯示RAM在液晶模塊中的地址80H~9FH。字符顯示的RAM的地址與32個字符顯示區域有著一一對應的關系,其對應關系如下表所示。
| ? 80H ? | ? 81H ? | ? 82H ? | ? 83H ? | ? 84H ? | ? 85H ? | ? 86H ? | ? 87H ? |
| ? 90H ? | ? 91H ? | ? 92H ? | ? 93H ? | ? 94H ? | ? 95H ? | ? 96H ? | ? 97H ? |
| ? 88H ? | ? 89H ? | ? 8AH ? | ? 8BH ? | ? 8CH ? | ? 8DH ? | ? 8EH ? | ? 8FH ? |
| ? 98H ? | ? 99H ? | ? 9AH ? | ? 9BH ? | ? 9CH ? | ? 9DH ? | ? 9EH ? | ? 9FH ? |
3 、圖形顯示
先設垂直地址再設水平地址(連續寫入兩個字節的資料來完成垂直與水平的坐標地址)
垂直地址范圍 AC5...AC0
水平地址范圍 AC3…AC0
繪圖RAM 的地址計數器(AC)只會對水平地址(X 軸)自動加一,當水平地址=0FH 時會重新設為00H 但并不會對垂直地址做進位自動加一,故當連續寫入多筆資料時,程序需自行判斷垂直地址是否需重新設定。GDRAM的坐標地址與資料排列順序如下圖:
4、應用說明
用帶中文字庫的128X64顯示模塊時應注意以下幾點:
①欲在某一個位置顯示中文字符時,應先設定顯示字符位置,即先設定顯示地址,再寫入中文字符編碼。
②顯示ASCII字符過程與顯示中文字符過程相同。不過在顯示連續字符時,只須設定一次顯示地址,由模塊自動對地址加1指向下一個字符位置,否則,顯示的字符中將會有一個空ASCII字符位置。
③當字符編碼為2字節時,應先寫入高位字節,再寫入低位字節。
④模塊在接收指令前,向處理器必須先確認模塊內部處于非忙狀態,即讀取BF標志時BF需為“0”,方可接受新的指令。如果在送出一個指令前不檢查BF標志,則在前一個指令和這個指令中間必須延遲一段較長的時間,即等待前一個指令確定執行完成。指令執行的時間請參考指令表中的指令執行時間說明。⑤“RE”為基本指令集與擴充指令集的選擇控制位。當變更“RE”后,以后的指令集將維持在最后的狀態,除非再次變更“RE”位,否則使用相同指令集時,無需每次均重設“RE”位。
總結
以上是生活随笔為你收集整理的12864液晶中文资料JHD529m1的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 计算机音乐谱魔法城堡,《魔法城堡》简谱
- 下一篇: 网络流(17/24)