国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于單片機(jī)的VRAM型彩色液晶驅(qū)動(dòng)設(shè)計(jì)

2011-01-26 08:09:22程秀平劉忠超
電子與封裝 2011年1期
關(guān)鍵詞:驅(qū)動(dòng)程序存儲(chǔ)器液晶

程秀平,劉忠超

(1.河南省南陽(yáng)市公路技校,河南 南陽(yáng) 473000;2.南陽(yáng)理工學(xué)院電子系,河南 南陽(yáng) 473000)

1 引言

隨著微電子技術(shù)的飛速發(fā)展,在以單片機(jī)為核心的嵌入式系統(tǒng)中,顯示器的設(shè)計(jì)是一個(gè)必不可少的環(huán)節(jié)。液晶顯示器作為一種新型顯示器件,由于具有薄、輕及功耗低的特點(diǎn),以其特有的優(yōu)勢(shì)正得到越來(lái)越廣泛的應(yīng)用,已廣泛應(yīng)用在計(jì)算機(jī)顯示器、VCD顯示板、便攜式醫(yī)療設(shè)備、儀器儀表等工業(yè)和民用領(lǐng)域,通過(guò)使用液晶顯示器可以大大地提高系統(tǒng)的智能性、易用性, 給人們的生產(chǎn)生活帶來(lái)舒適和方便[1-2]。

本文以美國(guó)Atmel公司的51單片機(jī)AT89C55WD為核心控制器,以LR035VRAM彩色液晶模塊為控制對(duì)象界面,介紹了AT89C55WD單片機(jī)與VRAM型彩色液晶模塊之間硬件接口的實(shí)現(xiàn)方法,通過(guò)軟件編程方式模擬實(shí)現(xiàn)了LR035VRAM液晶顯示模塊的讀寫(xiě)接口時(shí)序,給出了基于c51語(yǔ)言的驅(qū)動(dòng)程序,實(shí)現(xiàn)了對(duì)液晶模塊LR035VRAM的顯示控制。所設(shè)計(jì)的接口電路及驅(qū)動(dòng)程序模塊已成功應(yīng)用于仿真訓(xùn)練器顯示儀中。

2 接口電路設(shè)計(jì)

2.1 AT89C55WD微處理器

AT89C55WD是一個(gè)低電壓、高性能的CMOS 8位單片機(jī)。其有40個(gè)引腳,32個(gè)外部雙向輸入/輸出(I/O)端口,同時(shí)內(nèi)含2個(gè)外中斷口,2個(gè)16位可編程定時(shí)計(jì)數(shù)器,2個(gè)全雙工串行通信口,引腳兼容工業(yè)標(biāo)準(zhǔn)89C51和89C52芯片,采用通用編程方式。片內(nèi)含20kBytes可反復(fù)擦寫(xiě)的Flash只讀程序存儲(chǔ)器和256 Bytes的隨機(jī)存取數(shù)據(jù)存儲(chǔ)器,可反復(fù)擦寫(xiě)的Flash存儲(chǔ)器可有效降低開(kāi)發(fā)成本,提供許多高性價(jià)比系統(tǒng)的解決方案,適用于多數(shù)嵌入式應(yīng)用系統(tǒng)[3]。

2.2 LR035VRAM液晶顯示原理

LR035VRAM是上海朗睿電子科技有限公司生產(chǎn)的真彩色液晶顯示器,采用VRAM顯示方式。VRAM(Video Random-Access Memory)視頻存儲(chǔ)技術(shù)是近年來(lái)比較流行的專門(mén)用于圖形處理的雙端口存儲(chǔ)技術(shù),常用于中、高檔顯示卡。其采用緩存、邏輯仲裁、存儲(chǔ)陣列技術(shù)實(shí)現(xiàn)兩個(gè)設(shè)備同時(shí)對(duì)同一存儲(chǔ)陣列的訪問(wèn)而不需要等待,且互不干擾[4]。

LR035VRAM存儲(chǔ)器地址單元同液晶屏幕上的像素點(diǎn)一一對(duì)應(yīng),可以把這個(gè)存儲(chǔ)器理解為“顯示映像”存儲(chǔ)器。如果希望在液晶屏幕上某一位置顯示文字或圖形,只需要向存儲(chǔ)器內(nèi)對(duì)應(yīng)區(qū)域?qū)懭胂鄳?yīng)的數(shù)據(jù)即可。VRAM存儲(chǔ)器的一個(gè)字節(jié)由8位構(gòu)成,顯示器屏幕上的一個(gè)像素點(diǎn)由R、G、B三個(gè)“點(diǎn)”來(lái)組成。

2.3 控制電路設(shè)計(jì)

LR035VRAM的接口方式為總線方式。外部引線包括有地址總線、數(shù)據(jù)總線和片選讀寫(xiě)輸入,可以直接掛接到單片機(jī)的總線上,作為單片機(jī)的某部分內(nèi)存來(lái)使用。LR035VRAM接口采用34針插座,其引腳定義可以參閱其說(shuō)明書(shū)。

根據(jù)LR035VRAM可以作為單片機(jī)的外部存儲(chǔ)器使用的接口特性,其和單片機(jī)的接口電路設(shè)計(jì)比較簡(jiǎn)單,主要是AT89C55WD單片機(jī)I/O端口資源的合理規(guī)劃和分配。AT89C55WD單片機(jī)資源比較有限,為了最大程度減少端口的占用,采用地址/數(shù)據(jù)復(fù)用技術(shù),地址、數(shù)據(jù)分時(shí)占用P0的8個(gè)端口。即AT89C55WD的P00-P07作為8位數(shù)據(jù)端口,直接連接LR035VRAM液晶顯示器的數(shù)據(jù)端口D0-D7;同時(shí)將AT89C55WD的P00-P07、P20-P27、P10-P14作為18位地址端口,直接連接LR035VRAM液晶顯示器的地址端口A0-A18,將AT89C55WD的讀寫(xiě)信號(hào)線(16和17端口)與LR035VRAM的讀寫(xiě)信號(hào)線直接連接。圖1是該控制電路的設(shè)計(jì)原理方框圖。

圖1 AT89C55WD與LR035VRAM接口電路

3 驅(qū)動(dòng)程序設(shè)計(jì)

要實(shí)現(xiàn)對(duì)液晶模塊LR035VRAM的正確控制以及在顯示器上顯示字符和必要的信息等功能,在屏幕上點(diǎn)亮顯示一個(gè)點(diǎn)是實(shí)現(xiàn)這些功能的基礎(chǔ)。這都由液晶顯示器的驅(qū)動(dòng)程序來(lái)實(shí)現(xiàn),通過(guò)驅(qū)動(dòng)程序向液晶模塊對(duì)應(yīng)地址傳送相應(yīng)的數(shù)據(jù)即可。其驅(qū)動(dòng)程序開(kāi)發(fā)環(huán)境為美國(guó)Keil Software的Keil C51。

3.1 LR035VRAM驅(qū)動(dòng)程序的實(shí)現(xiàn)

LR035VRAM內(nèi)存為512k×8位,屏幕上的點(diǎn)陣為320列×240行。256色顯示時(shí),每個(gè)點(diǎn)對(duì)應(yīng)3個(gè)像素(RGB)。內(nèi)存中的每一字節(jié)對(duì)應(yīng)一個(gè)點(diǎn),其對(duì)應(yīng)關(guān)系如表1所示[4]。

表1 內(nèi)存字節(jié)與點(diǎn)的對(duì)應(yīng)關(guān)系

其中R、G、B表示紅、綠、藍(lán)三原色,D7-D0表示要對(duì)應(yīng)的數(shù)據(jù)位。當(dāng)D7-D0取不同值時(shí),對(duì)應(yīng)的點(diǎn)將會(huì)顯示不同的顏色。每行占用200H個(gè)內(nèi)存地址,其中00H-13FH地址單元為可顯示的,其他的不參與顯示,假設(shè)以X表示橫向坐標(biāo)取值范圍為0~319(因?yàn)橛?20列),以Y表示縱坐標(biāo)取值范圍為0~239(因?yàn)橛?40行),所以一個(gè)點(diǎn)(X,Y)的內(nèi)存地址ADD坐標(biāo)可用公式(1)計(jì)算:

根據(jù)LR035VRAM彩色液晶顯示器的顯示原理,其顯示僅僅是對(duì)象不一樣,而其顯示原理都是一樣的。其驅(qū)動(dòng)程序流程圖如圖2所示。

圖2 驅(qū)動(dòng)程序流程圖

在設(shè)計(jì)的驅(qū)動(dòng)程序中,清屏函數(shù)、數(shù)字、字母、漢字顯示函數(shù)僅僅是顯示的內(nèi)容、字模不一樣,其顯示原理都是一樣的。這里只給出漢字顯示的子函數(shù),其他情況可參考漢字顯示子程序,不再給出。漢字顯示的C51子函數(shù)如下[5-6]:

void Write_hanzi(unsigned int x,unsigned int y,uchar WIDTH,uchar HIGH,uchar clor,uchar *dot)

//漢字顯示程序

{uchar i,j,k,m,hanzi,n;

pp=x+y*0x200; // 顯示地址

for(j=0;j

{n=pp; // 暫存要顯示漢字的首地址

P1=((y+j)>>2);

for(k=0;k<(WIDTH/8);k++)

//控制顯示漢字字體大小

{for(i=0;i<8;i++,pp++)

{if((hanzi&0x80)==0x80) //是1,將想顯示的字體顏色送到相應(yīng)的地址上

{*pp=clor;}

Else

{*pp=0x00;} //是0,將要顯示的背景黑色送到相應(yīng)的地址上

hanzi=hanzi<<1;} // 從自己建立的想要顯示的漢字字模庫(kù)里選取要寫(xiě)的字節(jié)

m++;}pp=n+0x200;}} // 換下一行繼續(xù)顯示

3.2 應(yīng)用實(shí)例

通過(guò)硬件控制系統(tǒng)的搭建和驅(qū)動(dòng)程序的設(shè)計(jì),在硬件平臺(tái)系統(tǒng)上加上外圍傳感器信息,已將其成功地移植應(yīng)用于仿真訓(xùn)練儀中,其應(yīng)用效果如圖3所示。

圖3 應(yīng)用顯示效果圖

4 結(jié)論

本文主要介紹了51單片機(jī)對(duì)VRAM型彩色液晶顯示模塊的控制以及驅(qū)動(dòng)程序的設(shè)計(jì)方法。開(kāi)發(fā)編寫(xiě)的驅(qū)動(dòng)程序均在C51編譯器里成功調(diào)試通過(guò),實(shí)現(xiàn)了LR035VRAM彩色液晶顯示器對(duì)各種顏色的漢字、數(shù)字、英文以及圖形的正確顯示,并通過(guò)擴(kuò)展將其成功應(yīng)用于仿真訓(xùn)練儀中,達(dá)到了顯示色彩豐富、性能穩(wěn)定、功耗低、人機(jī)界面友好的效果。

[1]褚東升,亓慶剛,岳成亮.基于AVR單片機(jī)的VRAM型彩色液晶顯示模塊設(shè)計(jì)[J].液晶與顯示,2005,20(5):434-439.

[2]楊萍,劉忠超.AVR單片機(jī)與VRAM型彩色液晶模塊接口電路及驅(qū)動(dòng)程序設(shè)計(jì)[J].化工自動(dòng)化及儀表,2010,37(9):86-87.

[3]AT89C55WD Datasheets [EB/OL]. http :// www.atmel.com. 2010-02-20.

[4]上海朗睿電子科技有限公司.LR035VR/F系列彩色液晶顯示器使用說(shuō)明書(shū)V1.2[Z].2000.

[5]周國(guó)運(yùn).單片機(jī)原理及應(yīng)用(C語(yǔ)言版)[M].北京:水利水電出版社,2009.

[6]毛學(xué)軍.液晶顯示技術(shù)[M].北京:電子工業(yè)出版社,2008.

猜你喜歡
驅(qū)動(dòng)程序存儲(chǔ)器液晶
不可壓液晶方程組的Serrin解
靜態(tài)隨機(jī)存儲(chǔ)器在軌自檢算法
《液晶與顯示》征稿簡(jiǎn)則
液晶與顯示(2020年8期)2020-08-08 07:01:46
液晶與顯示2015年第30卷第1期 目錄
液晶與顯示(2015年1期)2015-02-28 21:15:54
存儲(chǔ)器——安格爾(墨西哥)▲
液晶與顯示2014年第29卷第2期 目錄
液晶與顯示(2014年2期)2014-02-28 21:11:05
基于Nand Flash的高速存儲(chǔ)器結(jié)構(gòu)設(shè)計(jì)
驅(qū)動(dòng)程序更新與推薦
驅(qū)動(dòng)程序更新與推薦
驅(qū)動(dòng)程序更新與推薦
辽宁省| 长海县| 沙河市| 突泉县| 印江| 夹江县| 连城县| 静海县| 宝兴县| 南陵县| 武冈市| 岗巴县| 唐海县| 固镇县| 金寨县| 瑞金市| 兴化市| 新昌县| 莆田市| 阿拉善盟| 吉水县| 文水县| 叶城县| 自贡市| 淮南市| 天祝| 兴仁县| 澄江县| 安图县| 屏山县| 县级市| 原阳县| 冀州市| 成武县| 黄龙县| 金华市| 江永县| 曲松县| 天柱县| 绥宁县| 华容县|