一種基于DSP實(shí)現(xiàn)的LCD液晶屏顯示技術(shù)
隨著電子產(chǎn)品集成化的發(fā)展.液晶顯示屏在便攜式儀器中實(shí)現(xiàn)圖像或文字的顯示應(yīng)用更為廣泛。同時(shí)在當(dāng)今信息時(shí)代,數(shù)字圖像處理技術(shù)對(duì)實(shí)時(shí)性、運(yùn)算量大的要求越來越高,所以高運(yùn)算速度的DSP芯片在數(shù)字圖像處理領(lǐng)域得到了廣泛的應(yīng)用;其使數(shù)據(jù)采集、控制與人機(jī)界面融為一體,由于DSP處理速度快,整個(gè)系統(tǒng)能夠由一片DSP芯片控制.體積更小、功耗更低、更便于攜帶[1]。目前大多數(shù)液晶控制器的接[1電路及驅(qū)動(dòng)程序主要是針對(duì)單片機(jī)設(shè)計(jì)的[2],DSP的液晶屏接口電路參考資料相對(duì)較少,而在實(shí)際應(yīng)用中,單片機(jī)的硬件資源遠(yuǎn)遠(yuǎn)不夠。所以本文提出一種由DSP控制實(shí)現(xiàn)LcD液晶屏顯示的方案。
本文引用地址:http://www.ex-cimer.com/article/80774.htm2 硬件設(shè)計(jì)
本系統(tǒng)采用TI公刮的加強(qiáng)型定點(diǎn)DSP芯片TMS320VC54lOA[3],其頻率可達(dá)160 MHz,內(nèi)部有64 kRAM空間,可以靈活的映射為數(shù)據(jù)或程序存儲(chǔ)窄間。
液品模塊采用信利公司的MG一128128-2中規(guī)模液品屏[2]。該模塊內(nèi)置有T6963C控制芯片,T6963C的最大特點(diǎn)是具有獨(dú)特的硬件初始值設(shè)置功能,顯示驅(qū)動(dòng)所需的參數(shù)如占空比系數(shù),驅(qū)動(dòng)傳輸?shù)淖止?jié)數(shù)/行及字符的字體選擇等均由引腳電平設(shè)置。這樣T6963C的初始化在上電時(shí)就已經(jīng)基本設(shè)置完成。軟件操作的主要精力就可以全部用于顯示畫面的設(shè)計(jì)。
本系統(tǒng)中使VC5410A采用1/O空間擴(kuò)展方式控制液晶模塊。由于向液晶模塊寫數(shù)據(jù)、寫指令和寫控制信號(hào)時(shí)。需要鎖存總線,所以采用了鎖存芯片74HC573實(shí)現(xiàn)總線的鎖存。74HC573由8個(gè)D觸發(fā)器組成。這8個(gè)D觸發(fā)器具有共同的鎖存使能(LE)和輸出使能 。LE的下降沿將DO~D7上的數(shù)據(jù)鎖存到O0~O7上的數(shù)據(jù)不隨D0~D7變化。
DSP與液晶顯示模塊部分接口電路如圖l所示。LE的下降沿將D0~D7上的數(shù)據(jù)鎖存到O0~O7上,當(dāng)LE為低時(shí)O0~O7上的數(shù)據(jù)不隨D0~D7變化。鎖存器的使能端由Vc5410A的A10和IS控制,即把控制信號(hào)鎖存在地址為0400H的I/O空間上。其真值表如表1昕示。
系統(tǒng)中相類似的鎖存電路有3個(gè),寫數(shù)據(jù)(指令)鎖存電路的使能端由DSP的A11和IS控制,將數(shù)據(jù)或指令鎖存住地址為0800H的I/O空間上,讀數(shù)據(jù)鎖存電路使能端DSP的A9和IS控制,將所讀的數(shù)據(jù)鎖存在地址為020OH的1/O空間上。DSP的低8位數(shù)據(jù)線和液晶模塊的數(shù)據(jù)總線連接.負(fù)責(zé)將控制指令和顯示數(shù)據(jù)送到顯示模塊的數(shù)據(jù)線上。 vc5410A的內(nèi)部存儲(chǔ)空間有限,所以本系統(tǒng)擴(kuò)展了一個(gè)64 Mb/s的外部程序存儲(chǔ)器SST39VF400A,該芯片的數(shù)據(jù)線和地址線分別與DSP芯片的對(duì)應(yīng)相連,片選信號(hào)由 控制,讀寫控制引腳與DSP的讀寫信號(hào)R/w相連。
3軟件設(shè)計(jì)
液晶屏實(shí)際是通過若干個(gè)象素點(diǎn)來構(gòu)成漢字或圖形的,刈'應(yīng)位為"1"時(shí).液晶點(diǎn)被點(diǎn)亮;為"O"時(shí),不點(diǎn)亮。要顯示漢字或圖肜實(shí)際就是按照一定的規(guī)律點(diǎn)亮相應(yīng)的液晶象素點(diǎn).視覺上看起來就成了一個(gè)漢字或圖形。
MG一1 28128-2的控制器T6963C有一系列操作指令,通過指令的調(diào)用可以實(shí)現(xiàn)對(duì)液晶模塊的控制[4]。在設(shè)計(jì)過程中,根據(jù)T6963c的指令系統(tǒng)及與DSP的時(shí)序信號(hào)波形圖進(jìn)行編程。T6963指令系統(tǒng)如表2所示。T6963C的控制時(shí)序如圖2所示。
液晶模塊一作時(shí)序的產(chǎn)生主要是通過控制信號(hào)的改變來實(shí)現(xiàn)的.在編寫寫指令、寫數(shù)據(jù)、讀數(shù)據(jù)等 子程序之前,首先要確定硬件接口圖的時(shí)序,本系統(tǒng)的控制信號(hào)接口順序巾高到低依次為:NULL一NUL一OEw-RD-WR-CD一CE-LCD RST,通過訪問I/O空間的0200H,0400H,0800H地址,來控制液晶模塊。
DSP控制液品屏的軟件流程圖如圖3所示。
液品屏上電之后,屏幕上的顯示是隨機(jī)的,所以控制程序開始就需要清屏,使屏幕上的液晶點(diǎn)全滅。然后初始化一些顯示參數(shù),例如顯示區(qū)域、娃示方式、顯示狀態(tài)、光標(biāo)狀念等的設(shè)置。然后畫出操作界面背景;DSP控制液晶顯示采用外部中斷辦式。當(dāng)有外部中斷時(shí).前端數(shù)據(jù)采集部分將數(shù)據(jù),開始進(jìn)入DSP緩存.同時(shí)清除顯示區(qū)域上次的顯示,對(duì)數(shù)據(jù)進(jìn)行相應(yīng)的處理。給液晶屏發(fā)送接收數(shù)據(jù)指令,即將LCD的RD引腳置為低電平,然后將顯示數(shù)據(jù)送到LCD數(shù)據(jù)總線上,一個(gè)周期的數(shù)據(jù)的采集和顯示即完成。
下面將給出部分C語言的液晶模塊驅(qū)動(dòng)子程序,首先足一些變量的聲明函數(shù)和用到的庫函數(shù):
#include
#define port LCD cmd port0400
//定義液晶模塊的命令鎖存地址為I/O空間的
0400H
#define port LCD write port0800
∥寫數(shù)據(jù)鎖存地址為0800H
#define port LCD read port0200
//讀數(shù)據(jù)鎖存地址為0200H
#define port_LCD_null;
ioport unsigned short port port_LCD_cmd;
ioport unsigned short port port_LCD_write;
ioport unsigned short port port_LCD_read;
ioport unsigned short port port_LCD_null;
讀命令的子程序:
unsigned short Icd-read-command()
{
{
unsigned short temp;
port LCD_ cmd=0x003F:
port LCD_ null=0x003F;
port LCD_ emd一0x002D;
∥LCD_ RST=1,CE=0,CD=1,WR=1,RD=0,OEW=1
port LCD_ nulI=0x002D;
temp=port LCD_ read:
port LCD_ cmd=0x003F;
port LCD_ null=0x003F;
return(temp);}
畫點(diǎn)子程序:
Void led draw point(unsigned short X,unsigned short y)
{
unsigned short temp;
temp一(y<<4)+(x>>3)+0x100;
led-write-data(temp);
led-write-data(temp>>8);
lcd-write-write-command(0x24);
//送地址指針的控制字24H到命令端口
temp=(0x07一(X&ox07))l 0xF8;
//FOH~FFH把選中的一位置1,即點(diǎn)亮,畫點(diǎn)完成
lcd-write-command(temp);
}
向液晶模塊寫數(shù)據(jù)和寫指令的子程序與讀數(shù)據(jù)的過程相似,只要根據(jù)控制模塊的時(shí)序圖給出相應(yīng)的命令即可。然后編寫出初始化、清屏、畫點(diǎn)等子程序,再此基礎(chǔ)上就可以編寫顯示字符、數(shù)字、漢字及圖形等。每條指令的執(zhí)行都是先送入?yún)?shù),再送入指令代碼,然后送顯示數(shù)據(jù)。
4 結(jié) 語
本文提出利用高速率DSP芯片控制液晶屏顯示的技術(shù),并編寫出針對(duì)DSP的C語言液晶模塊的驅(qū)動(dòng)程序,能夠廣泛地應(yīng)用于各種圖像的處理和顯示場(chǎng)合,在調(diào)試和仿真過程中取得了良好的顯示效果。此電路的設(shè)計(jì)思想也可以應(yīng)用在其他液晶模塊的接口設(shè)計(jì)中,只要對(duì)程序稍加改動(dòng)就可以加以。
評(píng)論