單片機(jī)與液晶顯示模塊HS12864-1的接口及其編程
圖2中采用并行通信方式,單片機(jī)的IOA0-IOA7口與液晶模塊的DB0-DB7口相連作為數(shù)據(jù)輸入輸出用;即IOB0- IOB 4口與液晶模組的CS1、CS2、D/I、R/W、E相連作為單片機(jī)對(duì)液晶的控制口。
4、顯示程序設(shè)計(jì)
在液晶上顯示整屏字符或圖像有兩種方法:一種是將所要顯示的字模數(shù)據(jù)一次性發(fā)送到顯示數(shù)據(jù)RAM中;另外一種是在屏幕上指定位置進(jìn)行單獨(dú)顯示[4]。兩種方法都要在控制器空閑的條件下進(jìn)行操作,在操作之前都要先讀取忙標(biāo)志,判斷控制器是否處于忙狀態(tài),在一般情況下,可以用延時(shí)等待的方法代替。
本系統(tǒng)程序主要包括主程序和幾個(gè)子程序塊: LCD初始化, 液晶顯示屏選擇,LCD顯示,還有若干個(gè)控制子程序。主程序分別調(diào)用這些子程序?qū)崿F(xiàn)對(duì)液晶顯示器操作控制。程序流程圖見(jiàn)圖3。
圖3 程序流程圖
凌陽(yáng)單片機(jī)的編程語(yǔ)言常用的有二種:匯編語(yǔ)言和C語(yǔ)言。匯編語(yǔ)言的機(jī)器代碼生成效率很高但可讀性不強(qiáng),而C語(yǔ)言在大多數(shù)情況下其機(jī)器代碼生成效率和匯編語(yǔ)言相當(dāng),但可讀性和可移植性卻遠(yuǎn)遠(yuǎn)超過(guò)匯編語(yǔ)言,而且C語(yǔ)言還可以嵌入?yún)R編來(lái)解決高時(shí)效性的代碼編寫(xiě)問(wèn)題。對(duì)于開(kāi)發(fā)周期來(lái)說(shuō),用C語(yǔ)言的開(kāi)發(fā)周期通常要小于匯編語(yǔ)言很多。綜合以上C語(yǔ)言的優(yōu)點(diǎn),在設(shè)計(jì)時(shí)選擇了C語(yǔ)言。
這里給出右半屏送命令/數(shù)據(jù)程序,說(shuō)明SPCE061A單片機(jī)程序設(shè)計(jì)中對(duì)IOA /IOB口的設(shè)置。凌陽(yáng)單片機(jī)控制液晶顯示部分程序如下:
5、結(jié)束語(yǔ)
本系統(tǒng)調(diào)試采用的是凌陽(yáng)61板(即SPCE061A EMU BOARD)和u'nSP IDE 集成開(kāi)發(fā)環(huán)境。硬件調(diào)試較為簡(jiǎn)單,只需調(diào)節(jié)好液晶的對(duì)比度和背光亮度即可;在軟件方面,使用凌陽(yáng)u'nSP IDE 軟件來(lái)編譯調(diào)試液晶程序。
在調(diào)試中字模數(shù)據(jù)來(lái)自字模生成軟件Zimo3,其生成的字模數(shù)據(jù)在本程序中不能直接使用,運(yùn)行結(jié)果會(huì)出現(xiàn)字體的上下部分顛倒,需要將其順序反轉(zhuǎn)。
調(diào)試效果達(dá)到了程序設(shè)計(jì)的要求。
參考文獻(xiàn)
[1] 李維 言是,郭強(qiáng).《液晶顯示應(yīng)用技術(shù)》[M].北京:電子工業(yè)出版社,2003.
[2] 薛鈞義.《凌陽(yáng)十六位單片機(jī)原理及應(yīng)用》[M].北京:北京航空航天大學(xué)出版社,2003.
[3] 張立材. 基于SPCE061A的多功能信號(hào)發(fā)生器設(shè)計(jì)實(shí)現(xiàn)[J]. 微計(jì)算機(jī)信息,2004.20(3):94-95.
[4] 楊雷,劉曉,魏春雪.液晶顯示器的接口技術(shù)及其抗干擾措施[J].液晶與顯示,2003.18(2):121-124.
[5] 廣州市千喜科技開(kāi)發(fā)有限公司內(nèi)部技術(shù)資料.《HS12864-1圖形點(diǎn)陣液晶顯示模塊使用手冊(cè)》[M].廣州市千喜科技開(kāi)發(fā)有限公司.
評(píng)論