《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 其他 > 業(yè)界動態(tài) > 基于T6963CFG的LCD在嵌入式系統(tǒng)中的應(yīng)用

基于T6963CFG的LCD在嵌入式系統(tǒng)中的應(yīng)用

2008-09-02
作者:譚云福 林志欽

1 引 言

  在嵌入式系統(tǒng)" title="嵌入式系統(tǒng)">嵌入式系統(tǒng)的研發(fā)和應(yīng)用中,選擇低價位、高性能的液晶顯示設(shè)備一直是設(shè)計者追求的目標(biāo)。中小型液晶顯示器以其規(guī)格多、價位低以及非常適用于嵌入式系統(tǒng)量身定制的特點(diǎn)深受研發(fā)者的青睞。T6963CFG是TOSHIBA公司生產(chǎn)的一款LCD控制器,可用于不同規(guī)格的液晶顯示器。深圳漢升公司生產(chǎn)的HS240128顯示器采用了這款LCD控制器,其分辨率達(dá)240×128,帶自掃描電路,具有文本顯示、圖形顯示" title="圖形顯示">圖形顯示和圖文混合顯示功能。

?

2 T6963CFG控制命令及時序

?

  T6963CFG是一款與大規(guī)模LCD驅(qū)動器和數(shù)據(jù)存儲器配合使用的LCD控制器。該控制器有8條并行數(shù)據(jù)、讀/寫控制、模式選擇以及亮度和背光控制等接口線,可以方便地與多種型號的處理器或微控制器" title="微控制器">微控制器直接相連。T6963CFG內(nèi)置128個字符的字模;外部擴(kuò)展存儲器高達(dá)64 KB(HS240128顯示器擴(kuò)展了32 KB),用于顯示緩沖區(qū),如文本區(qū)、圖形區(qū)以及自定義字符區(qū);LCD顯示窗口能在顯示緩沖區(qū)內(nèi)方便地移動。

?

  

2.1 控制命令及狀態(tài)字

?

  T6963CFG命令字有三種基本格式:

  格式1:數(shù)據(jù)1 數(shù)據(jù)2 命令碼

  格式2:數(shù)據(jù)1 命令碼

  格式3:命令碼

  在使用格式1時,需要按照數(shù)據(jù)1、數(shù)據(jù)2、命令碼的先后順序進(jìn)行寫操作,每次寫一個字節(jié)。如果選擇格式3,只有寫命令碼的操作。在對LCD讀數(shù)據(jù)或?qū)憯?shù)據(jù)操作之前都要進(jìn)行狀態(tài)檢測。只有在LCD允許的情況下才可以進(jìn)行相應(yīng)的操作。其狀態(tài)字及其功能如表l所示。

2.2 接口信號及時序

?

  HS240128-1顯示器封裝后留有21個接口信號線:

  C/D:命令/數(shù)據(jù)(高/低)選擇信號;

  CE:片選(低)信號;

  WR:寫(低)信號;

  RD:讀(低)信號;

  D0~D7:數(shù)據(jù)信號;

  FS:字體選擇信號(高:6×8,低:8×8);

  FG:外殼安全地;

  VSS:GND(地);

  VDD:邏輯電路和LCD的電源(5 V);

  VD:驅(qū)動電壓調(diào)整輸入(亮度);

  VEE:LCD驅(qū)動電源(輸出,-15 V);

  RST:復(fù)位(低)信號;

  K:背光(地);

  A:背光(5 V)。

  LCD接口控制信號的讀寫時序如圖1所示。各控制信號的時序可由微控制器的通用輸入輸出(GPIO)接口仿真實(shí)現(xiàn),例如:C/D為高電平,CE為低電平,WR為高電平以及RD為低電平時,可以從數(shù)據(jù)線上(D0~D7)讀取T6963CFG的狀態(tài)字。

3 在嵌入式系統(tǒng)中的硬件接口電路

?

  通常LCD產(chǎn)品都具有相應(yīng)的硬件接口電路" title="接口電路">接口電路,但其類型不盡相同。帶自掃描電路,可提供文本、圖形和圖文混合顯示功能的LCD可以方便地與市場提供的嵌入式微控制器或單片機(jī)相連,如Phlips公司的LPC2104、2119等。S3C44B0X是Samsung公司提供的高性價比嵌入式片上系統(tǒng)解決方案,采用ARM7TDMI內(nèi)核,片上集成了豐富的外圍元件,特別適用于對成本和功耗敏感的應(yīng)用。S3C44BOX雖然集成有LCD控制邏輯,但是,HS240128顯示器的控制接口內(nèi)置了控制電路,利用S3C44BOX豐富的GPIO口資源(71個),很容易實(shí)現(xiàn)配接。在本系統(tǒng)設(shè)計中選用PD0~PD7、PE0~PE2、PG4~PG5作為LCD的控制線和數(shù)據(jù)線。其電路連接如圖2所示。

  根據(jù)T6963CFG的讀寫時序和相應(yīng)的電路配接,讀寫操作的函數(shù)為:

char read(char type) ∥從T6963CFG讀取數(shù)據(jù)

4 顯示控制及程序設(shè)計

?

4.1 顯示緩沖區(qū)的設(shè)置

?

  顯示緩沖區(qū)可分為系統(tǒng)內(nèi)存" title="系統(tǒng)內(nèi)存">系統(tǒng)內(nèi)存顯示緩沖區(qū)和LCD顯示緩沖區(qū)。當(dāng)然,系統(tǒng)也可以只設(shè)置LCD顯示緩沖區(qū),程序可以只對LCD顯示緩沖區(qū)進(jìn)行操作。通常LCD顯示緩沖區(qū)設(shè)置在I/O接口電路中,如HS240128的顯示緩沖大小為32 KB。根據(jù)需要,LCD顯示緩沖區(qū)可以定義一個、二個或三個不同的顯示區(qū),例如:文本區(qū)、圖形區(qū)和自定義字符字模區(qū)??梢宰远x各區(qū)大?。鐖D3所示。LCD控制器可以自動將LCD顯示緩沖區(qū)中文本區(qū)和圖形區(qū)的顯示信息向屏幕輸出和刷新。屏幕的顯示位置與顯示緩沖區(qū)的位置具有映射對應(yīng)關(guān)系。

  在系統(tǒng)內(nèi)存中設(shè)置顯示緩沖區(qū),通常是為了規(guī)范程序設(shè)計,提高工作效率。程序首先對系統(tǒng)內(nèi)存中的顯示緩沖區(qū)進(jìn)行讀/寫操作,然后將其數(shù)據(jù)更新到LCD顯示緩沖區(qū)中。系統(tǒng)內(nèi)存顯示緩沖區(qū)分為文本區(qū)和圖形區(qū),本設(shè)計設(shè)置8 KB文本區(qū)和16 KB的圖形區(qū)。在字符方式下文本區(qū)可映射17個顯示頁,在圖形方式下圖形區(qū)可映射4個顯示頁。

?

4.2 字符和圖形顯示過程

?

 4.2.1 字符顯示過程

?

  在字符方式下,HS240128-1已裝配了128個常用字符字模。在指定的文本顯示緩沖區(qū)寫入相應(yīng)的字符碼00H~7FH,即可實(shí)現(xiàn)LCD輸出字符[1]。該LCD顯示器還提供了擴(kuò)展字符功能,字符碼為80H~FFH,它的字形碼(8×8點(diǎn)字模)需要提前寫入自定義字符的字模緩沖區(qū)中。其地址為7800H~7FFFH。在應(yīng)用中,通過控制FS引腳選擇字體大小(1:6×8或0:8×8)。在6×8方式下,屏幕一行可以顯示40個字符,在8×8方式下,一行顯示30個字符。整屏可以顯示16行字符。


  系統(tǒng)內(nèi)存文本緩沖區(qū)與LCD文本顯示緩沖區(qū)有著映射關(guān)系.其數(shù)據(jù)格式是按屏幕格式大小設(shè)定的。例如:一行30個字符對應(yīng)著內(nèi)存連續(xù)的30個字節(jié)。一屏(頁)16行對應(yīng)內(nèi)存連續(xù)的480字節(jié)。如果內(nèi)存文本緩沖區(qū)為8 KB,可映射17頁(共272行),其緩沖區(qū)設(shè)置為:Text_Buffer[272][30](行列二維數(shù)組),內(nèi)存文本緩沖區(qū)中的數(shù)據(jù)傳送到LCD文本緩沖區(qū)的過程可以通過下面的代碼實(shí)現(xiàn):

  LCD控制器自動掃描并顯示從內(nèi)存送來的17頁數(shù)據(jù)的第一頁,如果要顯示第二頁或其他頁,只要向LCD控制器重新設(shè)置文本區(qū)起始地址即可,因此,LCD可以從顯示緩沖區(qū)的任意位置開始顯示。例如.從第二行開始顯示,LCD文本區(qū)開始地址應(yīng)該為30(0x001E)。

?

  設(shè)置文本區(qū)開始地址的過程如下:

  4.2.2 圖形顯示過程

?

  在圖形方式下,顯示方法是寫點(diǎn)作圖,每次向圖形緩沖區(qū)寫入數(shù)據(jù)時,單位是一個字節(jié)(8點(diǎn)),HS240128是240x128分辨率,寫滿一屏(頁)共有3840字節(jié)。HS240128-1的控制器T6963CFG自動掃描并顯示圖形緩沖區(qū)的信息。系統(tǒng)內(nèi)存圖形顯示緩沖區(qū)與LCD圖形顯示緩沖區(qū)具有映射關(guān)系,其數(shù)據(jù)格式是按屏幕格式大小設(shè)定的。

?

  例如:一行240個點(diǎn)對應(yīng)著內(nèi)存連續(xù)的30個字節(jié)。一屏(頁)128行,對應(yīng)內(nèi)存連續(xù)的3 840字節(jié)。設(shè)置內(nèi)存圖形緩沖區(qū)為16 kB,映射LCD屏4頁(共512行)。內(nèi)存圖形緩沖區(qū)設(shè)置為:Graph-ic_buffer[512][30](行列數(shù)組),則將內(nèi)存圖形緩沖區(qū)中的數(shù)據(jù)傳送到LCD圖形緩沖區(qū)的過程可以通過下面的代碼實(shí)現(xiàn):

  另外,通過設(shè)置圖形區(qū)的起始地址實(shí)現(xiàn)屏幕滾動功能,每次滾動一行時,圖形區(qū)開始修改地址增量為+30。例如圖形從第二行開始顯示.向T6963CFG控制器送入圖形區(qū)的地址應(yīng)該是0x201E,即圖形區(qū)首地址為2000H+30=0x201E。

?

  其過程如下:

  4.2.3 漢字顯示過程

?

  漢字的顯示過程是在圖形方式下進(jìn)行的。HS240128-1中無漢字庫,顯示漢字時需要用戶自定義字模并寫入LCD圖形顯示緩沖區(qū),其顯示位置按顯示頁映射即可。漢字字模為16×16點(diǎn)陣格式(32字節(jié))。需漢字16x16字模的用戶可以從一般的漢字字模提取軟件中獲取,本文不再贅述。

?

  4.3 程序設(shè)計流程

?

  在對HS240128編程時,首先在內(nèi)存顯示緩沖區(qū)中準(zhǔn)備好數(shù)據(jù),并把數(shù)據(jù)寫入LCD緩沖區(qū),LCD自動實(shí)現(xiàn)掃描顯示功能。要實(shí)現(xiàn)屏幕滾動功能時,只要簡單的修改LCD文本區(qū)和圖形區(qū)的起始地址即可。其基本流程如圖4所示。

  5 結(jié)束語

?

  本文系統(tǒng)介紹了T6963CFG控制器的工作原理及LCD軟硬件應(yīng)用接口,詳細(xì)討論了點(diǎn)陣液晶顯示器的應(yīng)用方法和在嵌入式系統(tǒng)中的設(shè)計實(shí)例,希望為嵌入式系統(tǒng)開發(fā)人員在選擇和使用液晶顯示器時提供參考。文中所述的方法已經(jīng)在一些嵌入式系統(tǒng)設(shè)計中得到了很好的應(yīng)用。


????

?

本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,并不代表本網(wǎng)站贊同其觀點(diǎn)。轉(zhuǎn)載的所有的文章、圖片、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無法一一聯(lián)系確認(rèn)版權(quán)者。如涉及作品內(nèi)容、版權(quán)和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當(dāng)措施,避免給雙方造成不必要的經(jīng)濟(jì)損失。聯(lián)系電話:010-82306118;郵箱:aet@chinaaet.com。