液晶顯示" title="液晶顯示">液晶顯示器(LCD)具有功耗低、體積小、重量輕,、超薄等許多其他顯示器無法比擬的優(yōu)點,,近年來被廣泛用于單片機(jī)" title="單片機(jī)">單片機(jī)控制的智能儀器、儀表和低功耗電子產(chǎn)品中,。LCD可分為段式LCD,、字符式LCD和點陣式LCD。其中,,段式LCD和字符式LCD只能用于字符和數(shù)字的簡單顯示,,不能滿足圖形曲線和漢字顯示的要求;而點陣式LCD不僅可以顯示字符,、數(shù)字,,還可以顯示各種圖形、曲線以及漢字,、動畫,,并且可以實現(xiàn)屏幕滾動、反轉(zhuǎn),、閃爍等功能,,用途十分廣泛。本文主要闡述點陣式液晶顯示模塊QPYD-03與單片機(jī)8031的接口及編程方法,。
QPYD-03液晶顯示控制器是北京精電蓬遠(yuǎn)顯示技術(shù)有限公司開發(fā)的液晶顯示控制IC,。其特點為:
控制彩色320*3*240點陣STN液晶顯示模塊,8色,,單顯示區(qū),,無需初始化編程工作;實時操作:計算機(jī)可以隨時讀寫顯示存儲器而不影響顯示效果,,無“雪花”顯示,;使用簡便:與計算機(jī)接口和操作指令簡單統(tǒng)一,極容易使用,,并且升級換屏方便,;遵循80時序,所以可以直接與8031單片機(jī)利用總線方式通信,。
液晶顯示控制器管理128KB的顯示存儲器,,顯示起始地址固定于0000H,計算機(jī)對顯示存儲器可以進(jìn)行實時的讀寫操作,??刂破鲗︼@示數(shù)據(jù)的操作使用寫方式,即在計算機(jī)讀顯示存儲器當(dāng)前地址單元內(nèi)容時,,顯示地址不變,;向顯示存儲器的當(dāng)前地址單元寫入數(shù)據(jù)時,,顯示地址自動加一??刂破髦噶钜娤卤恚?/p>
QPYD-03液晶顯示模塊有8根數(shù)據(jù)線,、12根控制線和電源線,其中數(shù)據(jù)端DB0~DB7直接與單片機(jī)P0口連接,,片選信號CS用單片機(jī)的地址總線控制,,WR和RD分別直接與單片機(jī)的讀寫WR和RD連接,A0用來選擇兩個不同的地址(A0=0時為指令口地址,、A0=1時為數(shù)據(jù)口地址),。
8031片內(nèi)不帶EPROM,程序和自定義字符集字模都放在EPROM27512中,。接口電路" title="電路">電路見圖1,。其中QPYD-03的VEE為液晶驅(qū)動電壓+26.1V,調(diào)節(jié)顯示的對比度,;LCDCS為片選信號,,由GAL16V8給出。
軟件采用單片機(jī)C51語言,,并采用模塊化結(jié)構(gòu),,主要包括清屏、西文及數(shù)字的顯示,、漢字的顯示、多西文或漢字或混合顯示等模塊,。
3.1總體設(shè)計思想
對于清屏,,實質(zhì)就是寫入“空”字符(00h),以清除屏上原有的信息,,用for循環(huán)就可簡單實現(xiàn),,具體見源代碼的實現(xiàn)部分。
對于西文,、數(shù)字及漢字的顯示,,QPYD-03顯示模塊可控制320*240點陣的液晶顯示器。對于8 *8點陣的西文及數(shù)字,,每屏可顯示40列,、30行。對于16*16點陣的漢字,,每屏可顯示20列,、15行。漢字有文本和圖形兩種顯示方式,,使用文本方式顯示一個漢字需寫入4個代碼,,但一般只能顯示32個漢字,,而使用圖形方式,盡管一個漢字需寫入32個字節(jié),,但由于可顯示漢字多,,作者選用圖形方式。
很多情況下,,液晶顯示需要多西文,、數(shù)字、漢字的顯示或者西文數(shù)字漢字的混合顯示,,為此,,作者設(shè)計并編制了多字符漢字混合顯示程序,使程序代碼具有較高的可讀性和運(yùn)行效率,。圖2給出了程序流程圖,。圖中字模的保存與查找的實現(xiàn)是通過struct結(jié)構(gòu)體來實現(xiàn)的。
3.2軟件實現(xiàn)
以下為液晶顯示器各軟件模塊的源代碼,,它們均通過了編譯器的編譯實現(xiàn),,經(jīng)驗證有著很好的顯示效果。
隨著現(xiàn)代測控技術(shù)的發(fā)展,,儀器儀表的智能化程度越來越高,,對儀器可操作性的要求也越來越高。因此,,良好的人機(jī)界面越來越受到設(shè)計者的重視,。本文介紹的液晶顯示模塊的功能、顯示方法及編程的技巧在測控領(lǐng)域有著廣泛的使用價值,。