新聞中心

EEPW首頁 > 設(shè)計應(yīng)用 > 一種基于DSP實現(xiàn)的LCD液晶屏顯示技術(shù)

一種基于DSP實現(xiàn)的LCD液晶屏顯示技術(shù)

—— 一種基于實現(xiàn)的LCD液晶屏顯示技術(shù)
作者: 時間:2008-03-27 來源: 收藏
 1引 言

  隨著電子產(chǎn)品集成化的發(fā)展.液晶顯示屏在便攜式儀器中實現(xiàn)圖像或文字的顯示應(yīng)用更為廣泛。同時在當(dāng)今信息時代,數(shù)字圖像處理技術(shù)對實時性、運算量大的要求越來越高,所以高運算速度的芯片在數(shù)字圖像處理領(lǐng)域得到了廣泛的應(yīng)用;其使數(shù)據(jù)采集、控制與人機(jī)界面融為一體,由于處理速度快,整個系統(tǒng)能夠由一片芯片控制.體積更小、功耗更低、更便于攜帶[1]。目前大多數(shù)液晶控制器的接[1電路及驅(qū)動程序主要是針對單片機(jī)設(shè)計的[2],DSP的液晶屏接口電路參考資料相對較少,而在實際應(yīng)用中,單片機(jī)的硬件資源遠(yuǎn)遠(yuǎn)不夠。所以本文提出一種由DSP控制實現(xiàn)LcD液晶屏顯示的方案。

本文引用地址:http://m.butianyuan.cn/article/80774.htm

2 硬件設(shè)計

  本系統(tǒng)采用TI公刮的加強(qiáng)型定點DSP芯片TMS320VC54lOA[3],其頻率可達(dá)160 MHz,內(nèi)部有64 kRAM空間,可以靈活的映射為數(shù)據(jù)或程序存儲窄間。

  液品模塊采用信利公司的MG一128128-2中規(guī)模液品屏[2]。該模塊內(nèi)置有T6963C控制芯片,T6963C的最大特點是具有獨特的硬件初始值設(shè)置功能,顯示驅(qū)動所需的參數(shù)如占空比系數(shù),驅(qū)動傳輸?shù)淖止?jié)數(shù)/行及字符的字體選擇等均由引腳電平設(shè)置。這樣T6963C的初始化在上電時就已經(jīng)基本設(shè)置完成。軟件操作的主要精力就可以全部用于顯示畫面的設(shè)計。

  本系統(tǒng)中使VC5410A采用1/O空間擴(kuò)展方式控制液晶模塊。由于向液晶模塊寫數(shù)據(jù)、寫指令和寫控制信號時。需要鎖存總線,所以采用了鎖存芯片74HC573實現(xiàn)總線的鎖存。74HC573由8個D觸發(fā)器組成。這8個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為低時O0~O7上的數(shù)據(jù)不隨D0~D7變化。鎖存器的使能端由Vc5410A的A10和IS控制,即把控制信號鎖存在地址為0400H的I/O空間上。其真值表如表1昕示。

  系統(tǒng)中相類似的鎖存電路有3個,寫數(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)部存儲空間有限,所以本系統(tǒng)擴(kuò)展了一個64 Mb/s的外部程序存儲器SST39VF400A,該芯片的數(shù)據(jù)線和地址線分別與DSP芯片的對應(yīng)相連,片選信號由 控制,讀寫控制引腳與DSP的讀寫信號R/w相連。

  3軟件設(shè)計

  液晶屏實際是通過若干個象素點來構(gòu)成漢字或圖形的,刈'應(yīng)位為"1"時.液晶點被點亮;為"O"時,不點亮。要顯示漢字或圖肜實際就是按照一定的規(guī)律點亮相應(yīng)的液晶象素點.視覺上看起來就成了一個漢字或圖形。

  MG一1 28128-2的控制器T6963C有一系列操作指令,通過指令的調(diào)用可以實現(xiàn)對液晶模塊的控制[4]。在設(shè)計過程中,根據(jù)T6963c的指令系統(tǒng)及與DSP的時序信號波形圖進(jìn)行編程。T6963指令系統(tǒng)如表2所示。T6963C的控制時序如圖2所示。

  液晶模塊一作時序的產(chǎn)生主要是通過控制信號的改變來實現(xiàn)的.在編寫寫指令、寫數(shù)據(jù)、讀數(shù)據(jù)等 子程序之前,首先要確定硬件接口圖的時序,本系統(tǒng)的控制信號接口順序巾高到低依次為:NULL一NUL一OEw-RD-WR-CD一CE- RST,通過訪問I/O空間的0200H,0400H,0800H地址,來控制液晶模塊。

  DSP控制液品屏的軟件流程圖如圖3所示。

  液品屏上電之后,屏幕上的顯示是隨機(jī)的,所以控制程序開始就需要清屏,使屏幕上的液晶點全滅。然后初始化一些顯示參數(shù),例如顯示區(qū)域、娃示方式、顯示狀態(tài)、光標(biāo)狀念等的設(shè)置。然后畫出操作界面背景;DSP控制液晶顯示采用外部中斷辦式。當(dāng)有外部中斷時.前端數(shù)據(jù)采集部分將數(shù)據(jù),開始進(jìn)入DSP緩存.同時清除顯示區(qū)域上次的顯示,對數(shù)據(jù)進(jìn)行相應(yīng)的處理。給液晶屏發(fā)送接收數(shù)據(jù)指令,即將的RD引腳置為低電平,然后將顯示數(shù)據(jù)送到數(shù)據(jù)總線上,一個周期的數(shù)據(jù)的采集和顯示即完成。

  下面將給出部分C語言的液晶模塊驅(qū)動子程序,首先足一些變量的聲明函數(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);}

畫點子程序:

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,即點亮,畫點完成

lcd-write-command(temp);

}

  向液晶模塊寫數(shù)據(jù)和寫指令的子程序與讀數(shù)據(jù)的過程相似,只要根據(jù)控制模塊的時序圖給出相應(yīng)的命令即可。然后編寫出初始化、清屏、畫點等子程序,再此基礎(chǔ)上就可以編寫顯示字符、數(shù)字、漢字及圖形等。每條指令的執(zhí)行都是先送入?yún)?shù),再送入指令代碼,然后送顯示數(shù)據(jù)。

  4 結(jié) 語

  本文提出利用高速率DSP芯片控制液晶屏顯示的技術(shù),并編寫出針對DSP的C語言液晶模塊的驅(qū)動程序,能夠廣泛地應(yīng)用于各種圖像的處理和顯示場合,在調(diào)試和仿真過程中取得了良好的顯示效果。此電路的設(shè)計思想也可以應(yīng)用在其他液晶模塊的接口設(shè)計中,只要對程序稍加改動就可以加以。



關(guān)鍵詞: LCD DSP

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉