當(dāng)前位置:首頁(yè) > 電源 > 數(shù)字電源
[導(dǎo)讀]介紹一種內(nèi)含GB2312國(guó)標(biāo)一級(jí)簡(jiǎn)體漢字庫(kù)的圖形點(diǎn)陣液晶顯示模塊;對(duì)該模塊的性能特點(diǎn)、接口協(xié)議、接口時(shí)序、用戶命令作了詳盡的描述,并給出與單片機(jī)的硬件接口電路及相應(yīng)的顯示程序。

   摘要:介紹一種內(nèi)含GB2312國(guó)標(biāo)一級(jí)簡(jiǎn)體漢字庫(kù)的圖形點(diǎn)陣液晶顯示模塊;對(duì)該模塊的性能特點(diǎn)、接口協(xié)議、接口時(shí)序、用戶命令作了詳盡的描述,并給出與單片機(jī)的硬件接口電路及相應(yīng)的顯示程序。

    關(guān)鍵詞:圖形液晶模塊 中文字庫(kù) 單片機(jī)

引 言

1 概 述

  由于圖形點(diǎn)陣液晶顯示模塊具有顯示信息豐富(可顯示漢字、字符、曲線、圖形)、功耗低、體積小、質(zhì)量輕、壽命長(zhǎng)、不產(chǎn)生電磁輻射污染等優(yōu)點(diǎn),因而是單片機(jī)系統(tǒng)中理想的顯示器件。近年來(lái)被廣泛應(yīng)用于單片機(jī)控制的智能儀器儀表、工業(yè)控制領(lǐng)域、通信器材和家用電器中。目前,國(guó)內(nèi)在單片機(jī)系統(tǒng)中用于中文顯示時(shí),使用的液晶顯示模塊主要存在以下幾方面的不足。

 ?、?占用ROM空間大。以圖形方式顯示漢字,每個(gè)漢字將占用32字節(jié)的ROM空間,因此限制了顯示漢字字符的數(shù)量。此點(diǎn)對(duì)內(nèi)部Flash閃存數(shù)量較小的單片機(jī),影響尤為嚴(yán)重。

 ?、?與單片機(jī)的硬件接口電路復(fù)雜。該類型模塊除使用8根數(shù)據(jù)線外,尚需使用片選、寄存器選擇、讀/寫(xiě)選擇、使能控制等控制線,使得對(duì)單片機(jī)的硬件資源占用較為嚴(yán)重。

 ?、?接口時(shí)序復(fù)雜,軟件編程繁復(fù)。

  上述的幾點(diǎn)內(nèi)容限制了液晶顯示技術(shù)在單片機(jī)系統(tǒng)中的應(yīng)用。

  這里介紹的OCMJ5X10是160×80點(diǎn)陣的中文圖文液晶圖形顯示器模塊。該模塊的內(nèi)部由于含有國(guó)標(biāo)一級(jí)簡(jiǎn)體字庫(kù),使得漢字的顯示異常方便;同時(shí),該模塊與單片機(jī)的硬件接口除數(shù)據(jù)總線外,僅使用了REQ/BUSY兩根握手信號(hào)線,簡(jiǎn)化了與單片機(jī)的硬件接口電路設(shè)計(jì)。上述特點(diǎn)對(duì)軟件、硬件資源均十分緊張的單片機(jī)系統(tǒng)來(lái)說(shuō)是十分重要的。

圖1 OCMJ5X10寫(xiě)漢字時(shí)序圖

2 主要特點(diǎn)及引腳定義

  以下是OCMJ5X10中文液晶顯示模塊的主要特性。

① OCMJ5X10中文液晶顯示器模塊內(nèi)含 GB 2312 16×16點(diǎn)陣國(guó)標(biāo)一級(jí)簡(jiǎn)體漢字和 ASCII 8×8(半高)及8×16(全高)點(diǎn)陣英文字庫(kù)。用戶輸入?yún)^(qū)位碼或 ASCII 碼即可實(shí)現(xiàn)文本顯示。

② OCMJ5X10中文液晶顯示模塊也可用作一般的點(diǎn)陣圖形顯示器,提供位點(diǎn)陣和字節(jié)點(diǎn)陣兩種圖形顯示功能。用戶可在指定的屏幕位置上以點(diǎn)為單位或以字節(jié)為單位進(jìn)行圖形顯示。完全兼容一般的圖形點(diǎn)陣模塊。

③ OCMJ5X10中文液晶顯示模塊可以實(shí)現(xiàn)漢字、ASCII 碼、點(diǎn)陣圖形和變化曲線的同屏顯示,并可通過(guò)字節(jié)點(diǎn)陣圖形方式造字。

④ OCMJ5X10中文液晶顯示模塊具有上/下/左/右移動(dòng)當(dāng)前顯示屏幕及清除屏幕的命令,一改傳統(tǒng)的使用大量的設(shè)置命令進(jìn)行初始化的方法。OCMJ5X10 中文模塊所有的設(shè)置初始化工作都是在上電時(shí)自動(dòng)完成的,實(shí)現(xiàn)了“即插即用”;同時(shí),保留了一條專用的復(fù)位線供用戶選擇使用,可對(duì)工作中的模塊進(jìn)行軟件或硬件強(qiáng)制復(fù)位。規(guī)劃整齊的10個(gè)用戶接口命令代碼,非常容易記憶。標(biāo)準(zhǔn)用戶硬件接口采用REQ/BUSY 握手協(xié)議,簡(jiǎn)單可靠。

⑤ OCMJ5X10中文液晶顯示模塊使用+5V單電源,同時(shí)由模塊內(nèi)部提供顯示驅(qū)動(dòng)負(fù)電壓,簡(jiǎn)化了系統(tǒng)電源的設(shè)計(jì)。該模塊還具有LED背光源。

  OCMJ5X10中文圖文液晶顯示器的引腳說(shuō)明如表1所列。

表1 OCMJ5X10引腳說(shuō)明

引  腳 名  稱 方  向

說(shuō)  明

1 VLED- I 背光源負(fù)極(LED-OV
2 VLED+ I 背光源正極(LED+5V)
3 VSS I
4 VDD I (+5V)
5~12 DB0~DB7 I 數(shù)據(jù)0~7
13 BUSY O =1,已收到數(shù)據(jù)并正在處理中;
=0,模塊空閑,可接收數(shù)據(jù)
14 REQ I 請(qǐng)求信號(hào),高電平有效
15 RES I 復(fù)位信號(hào),低電平有效
16 NC    
17 RT1   LCD灰度調(diào)整,外接電阻端
18 RT2   LCD灰度調(diào)整,外接電阻端

3 硬件接口協(xié)議及接口時(shí)序

  OCMJ5X10模塊與CPU的接口除了使用DB0~DB7口8根數(shù)據(jù)線外,僅使用了REQ和BUSY兩根控制線,構(gòu)成請(qǐng)求/應(yīng)答(REQ/BUSY)握手方式,省略了傳統(tǒng)模塊接口方式的片選、讀寫(xiě)控制、指令/數(shù)據(jù)選擇、使能控制等控制線,從而使硬件接口及軟件時(shí)序變得非常簡(jiǎn)單。在硬件資源十分緊張的應(yīng)用系統(tǒng)中,也可采用REQ單線延時(shí)控制方式,從而把硬件資源占用降至最低。接口協(xié)議如下:當(dāng)BUSY線為高電平時(shí)(BUSY =1),表示模塊忙于內(nèi)部處理,不能接收用戶命令;而B(niǎo)USY為低電平時(shí)(BUSY =0),表示模塊空閑,等待接收用戶命令。CPU可在BUSY為低后的任意時(shí)刻開(kāi)始發(fā)送命令。首先,把用戶命令的當(dāng)前字節(jié)放到數(shù)據(jù)線上,接著發(fā)送高電平REQ 信號(hào),通知模塊,請(qǐng)求處理當(dāng)前數(shù)據(jù)線上的命令或數(shù)據(jù)。模塊在收到外部的REQ高電平信號(hào)后,立即讀取數(shù)據(jù)線上的命令或數(shù)據(jù),同時(shí)將應(yīng)答線BUSY變?yōu)楦唠娖?,表明模塊已收到數(shù)據(jù)并正在忙于對(duì)此數(shù)據(jù)的內(nèi)部處理。此時(shí),用戶對(duì)模塊的寫(xiě)操作已經(jīng)完成,可以撤消數(shù)據(jù)線上的信號(hào)并可做模塊顯示以外的其它工作,也可不斷地查詢BUSY是否為低。如果BUSY =0,說(shuō)明模塊對(duì)用戶的寫(xiě)操作已經(jīng)執(zhí)行完畢,可以再送下一個(gè)數(shù)據(jù)。如向模塊發(fā)出一個(gè)完整的顯示漢字的命令,包括顯示坐標(biāo)及漢字代碼在內(nèi)共需5個(gè)字節(jié),模塊在接收到最后一個(gè)字節(jié)后,才開(kāi)始執(zhí)行整個(gè)命令的內(nèi)部操作;因此,最后一個(gè)字節(jié)的應(yīng)答B(yǎng)USY 高電平(BUSY =1)持續(xù)時(shí)間較長(zhǎng)。這里以寫(xiě)入漢字命令的時(shí)序?yàn)槔?,給出 圖1所示的OCMJ5X10時(shí)序圖,對(duì)應(yīng)的具體時(shí)間參數(shù)說(shuō)明如表2所列。

表2 OCMJ5X10模塊時(shí)間參數(shù)

編  號(hào) 參數(shù)名稱 最小值 最大值

說(shuō)   明

1 tr/μs 0.4 - 數(shù)據(jù)線上數(shù)據(jù)穩(wěn)定時(shí)間
2 tb/μs 2 20 最大模塊響應(yīng)時(shí)間
3 trt/μs 11 - 最小REQ保持時(shí)間
4 ts1/μs 20 45 最大數(shù)據(jù)接收時(shí)間
5 ts2/ms - 30 最大命令指令處理時(shí)間

4 用戶命令

  OCMJ5X10模塊共有3類10條命令,每條命令分為操作碼和操作數(shù)兩部分,操作數(shù)為十六進(jìn)制數(shù)。下面介紹該模塊的用戶命令。

(1)顯示國(guó)標(biāo)漢字

命令格式 F0 XX YY QQ WW

XX:以漢字為單位的屏幕行坐標(biāo)值。

YY:以漢字為單位的屏幕列坐標(biāo)值。

QQ WW:坐標(biāo)位置上要顯示的GB 2312漢字區(qū)位碼。

OCMJ5X10模塊由于內(nèi)部含有中文字庫(kù),因此中文字符的顯示非常簡(jiǎn)單,只需給出該漢字的區(qū)位碼即可顯示該字。區(qū)位碼表可參見(jiàn)GB2312字符集。

(2)顯示8×8 ASCII字符

命令格式 F1 XX YY AS

該命令為4字節(jié)命令(最長(zhǎng)執(zhí)行時(shí)間為0.8ms,ts2= 0.8ms)。

XX:以ASCII碼為單位的屏幕行坐標(biāo)值。

YY:以ASCII碼為單位的屏幕列坐標(biāo)值。

AS:坐標(biāo)位置上要顯示的ASCII 字符碼。

(3)顯示8×16 ASCII字符

命令格式 F9 XX YY AS

操作數(shù)意義同上。

(4)顯示位點(diǎn)陣

命令格式 F2 XX YY

該命令為3字節(jié)命令(最長(zhǎng)執(zhí)行時(shí)間為0.1ms,ts2= 0.1ms)。

(5)顯示字節(jié)點(diǎn)陣

命令格式 F3 XX YY BT

該命令為4字節(jié)命令(最長(zhǎng)執(zhí)行時(shí)間為0.1ms,ts2= 0.1ms)。

(6)清 屏

命令格式 F4

該命令為單字節(jié)命令(最長(zhǎng)執(zhí)行時(shí)間為11ms,ts2=11ms),其功能為將屏幕清空。

(7)上 移

命令格式 F5

該命令為單字節(jié)命令(最長(zhǎng)執(zhí)行時(shí)間為25ms,ts2=25ms),其功能為將屏幕向上移動(dòng)一個(gè)點(diǎn)陣行。

(8)下 移

命令格式 F6

該命令為單字節(jié)命令(最長(zhǎng)執(zhí)行時(shí)間為30ms,ts2=30ms),其功能為將屏幕向下移動(dòng)一個(gè)點(diǎn)陣行。

(9)左 移

命令格式 F7

該命令為單字節(jié)命令(最長(zhǎng)執(zhí)行時(shí)間為12ms,ts2=12ms),其功能為將屏幕向左移動(dòng)一個(gè)點(diǎn)陣行。

(10)右 移

命令格式 F8

該命令為單字節(jié)命令(最長(zhǎng)執(zhí)行時(shí)間為12ms,ts2=12ms),其功能為將屏幕向右移動(dòng)一個(gè)點(diǎn)陣行。

圖2 OCMJ5X10液晶顯示模塊與AT89C52單片機(jī)的接口電路

5 具體應(yīng)用

  由于OCMJ5X10內(nèi)部具有中文字庫(kù),且使用了簡(jiǎn)單的兩線握手協(xié)議,因而將其應(yīng)用在嵌入式系統(tǒng)中,可簡(jiǎn)化顯示電路的硬件接口設(shè)計(jì)及軟件編程。雖然模塊與單片機(jī)之間數(shù)據(jù)的傳輸采用并行模式,占用單片機(jī)系統(tǒng)的硬件資源相對(duì)較多,但是相應(yīng)顯示軟件的編制卻要比采用串行接口模式的中文字庫(kù)液晶模塊相對(duì)簡(jiǎn)單。尤其是圖形顯示界面設(shè)計(jì),利用OCMJ5X10提供的顯示字節(jié)點(diǎn)陣命令(線繪圖),可方便、快捷地繪制出顯示圖形。此點(diǎn)在繪圖速度、ROM空間占用等方面優(yōu)于串行接口模式的液晶模塊。下面給出OCMJ5X10在嵌入式系統(tǒng)中的具體應(yīng)用,包括硬件接口電路及軟件編程。

5.1 硬件接口電路

   這里以AT89C52單片機(jī)為例,給出OCMJ5X10液晶顯示模塊與單片機(jī)的接口電路。單片機(jī)與模塊采用間接控制方式和REQ/BUSY握手方式。AT89C52的P1.0~P1.7口與模塊的DB0~DB7數(shù)據(jù)線相連,P3.4與模塊BUSY線相連,P3.5與模塊REQ線相連;晶振為12MHz,模塊采用上電自動(dòng)復(fù)位。AT89C52與OCMJ5X10的接口電路如圖2所示。

5.2 顯示軟件

下面給出與上述硬件電路配套的顯示子程序。其包括初始化、顯示漢字、顯示8×16點(diǎn)陣ASCII字符、點(diǎn)繪圖及線繪圖子程序??筛鶕?jù)顯示需要在主程序的相應(yīng)位置調(diào)用,即可實(shí)現(xiàn)相應(yīng)的顯示功能。OCMJ5X10內(nèi)部含有GB 2312一級(jí)字庫(kù),可滿足絕大部分應(yīng)用系統(tǒng)漢字顯示的需要。對(duì)于一級(jí)國(guó)標(biāo)字庫(kù)內(nèi)所沒(méi)有的漢字或需要顯示復(fù)雜圖形時(shí),可通過(guò)調(diào)用繪點(diǎn)及繪線子程序來(lái)實(shí)現(xiàn)任意復(fù)雜漢字或圖形的顯示。

;位定義

BUSY BIT P3.4

REQ BIT P3.5

;數(shù)據(jù)定義

X DATA 30H ;屏幕行坐標(biāo)緩沖區(qū)

Y DATA 31H ;屏幕列坐標(biāo)緩沖區(qū)

DATAH DATA 32H ;顯示值高位

DATAL DATA 33H ;顯示值低位

;初始化子程序

INT: MOV SP,#60H ;設(shè)堆棧

CLR REQ ;請(qǐng)求線清0

SETB BUSY ;將P3.4設(shè)為輸入口

RET

;寫(xiě)模塊子程序

SUB1: JB BUSY ,SUB1 ;確信模塊空閑

MOV P1 , A ;向總線送數(shù)椐

NOP ;等待數(shù)據(jù)總線穩(wěn)定

SETB REQ ;向模塊發(fā)請(qǐng)求命令

WAIT: JNB BUSY,WAIT ;等待模塊響應(yīng)

CLR REQ ;清REQ

RET ;返回

;寫(xiě)漢字程序

HZ: MOV A , #0F0H ;寫(xiě)顯示漢字命令

ACALL SUB1

MOV A , X

ACALL SUB1 ;寫(xiě)屏幕行坐標(biāo)值

MOV A , Y

ACALL SUB1 ;寫(xiě)屏幕列坐標(biāo)值

MOV A , DATAH

ACALL SUB1 ;寫(xiě)區(qū)位碼高位

MOV A , DATAL

ACALL SUB1 ;寫(xiě)區(qū)位碼低位

RET

;寫(xiě)8×16 ASCII碼程序

ASC2:MOV A , #0F9H ;寫(xiě)顯示8×16 ASCII

ACALL SUB1 ;字符命令

MOV A , X

ACALL SUB1 ;寫(xiě)屏幕行坐標(biāo)值

MOV A , Y

ACALL SUB1 ;寫(xiě)屏幕列坐標(biāo)值

MOV A , DATAL

ACALL SUB1 ;寫(xiě)字符ASCII碼

RET

;點(diǎn)繪圖子程序

HD: MOV A , #0F2H;寫(xiě)顯示位點(diǎn)陣命令

ACALL SUB1

MOV A , X ;寫(xiě)點(diǎn)屏幕行坐標(biāo)值

ACALL SUB1

MOV A , Y ;寫(xiě)點(diǎn)屏幕列坐標(biāo)值

ACALL SUB1

RET

;線繪圖子程序

HX: MOV A , #0F3H;寫(xiě)顯示位點(diǎn)陣命令

ACALL SUB1

MOV A , X ;寫(xiě)點(diǎn)屏幕行坐標(biāo)值

ACALL SUB1

MOV A , Y ;寫(xiě)點(diǎn)屏幕列坐標(biāo)值

ACALL SUB1

MOV A , DATAL

RET

;清屏程序

CLR: MOV A , #0F4H ;寫(xiě)清屏命令

ACALL SUB1

RET

結(jié) 語(yǔ)

  利用OCMJ5X10中文圖文液晶模塊相對(duì)簡(jiǎn)單的硬件接口及簡(jiǎn)單的用戶命令,可為嵌入式系統(tǒng)設(shè)計(jì)出顯示信息量大且顯示信息豐富的全中文人機(jī)界面,避免了傳統(tǒng)液晶模塊中文圖形顯示界面復(fù)雜的硬件接口設(shè)計(jì)及軟件編程。該模塊為嵌入式系統(tǒng)人機(jī)界面設(shè)計(jì)提供了一種較好的解決方案。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國(guó)汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開(kāi)發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來(lái)越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來(lái)越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場(chǎng)的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開(kāi)幕式在貴陽(yáng)舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語(yǔ)權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營(yíng)業(yè)績(jī)穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤(rùn)率延續(xù)升勢(shì) 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長(zhǎng) 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競(jìng)爭(zhēng)力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競(jìng)爭(zhēng)優(yōu)勢(shì)...

關(guān)鍵字: 通信 BSP 電信運(yùn)營(yíng)商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國(guó)電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場(chǎng) NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長(zhǎng)三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡(jiǎn)稱"軟通動(dòng)力")與長(zhǎng)三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉