基于SPCE061A單片機(jī)的圖形液晶模塊的驅(qū)動(dòng)設(shè)計(jì)
掃描二維碼
隨時(shí)隨地手機(jī)看文章
內(nèi)置T6963C控制器的Y240128A液晶模塊由雙電源(VDD/V0)供電。工作時(shí)需要提供一個(gè)負(fù)電壓 (即液晶驅(qū)動(dòng)電壓V0/VEE),用以調(diào)節(jié)對(duì)比度,接至液晶模塊的V0引腳。基于液晶材料的物理特性,液晶的對(duì)比度會(huì)隨著溫度的變化相應(yīng)變化,因此,所提供的負(fù)電壓必須隨溫度變化作相應(yīng)的調(diào)整,大致變換關(guān)系是溫度變化10℃,電壓變化1V左右。此外,液晶模塊在正常工作前必須提供驅(qū)動(dòng)電源。由于選用的Y240128A液晶模塊中已具備提供負(fù)電壓的功能,只需接一個(gè)可調(diào)電位器(阻值20kΩ)就可方便地為液晶提供驅(qū)動(dòng)電源。具體如圖1所示。
引腳1、2:接地;引腳3:接+5V電壓為L(zhǎng)CD邏輯電源;引腳5~8:液晶控制信號(hào);引腳10~17:液晶數(shù)據(jù)信號(hào);引腳4和引腳19:引腳4為液晶驅(qū)動(dòng)電源,并可進(jìn)行對(duì)比度調(diào)節(jié)。液晶驅(qū)動(dòng)電源要求是負(fù)電壓,將引腳19(VEE)提供的負(fù)電壓(-23V),和引腳4連接后即可為液晶屏提供負(fù)電壓。對(duì)于在溫度變化不大的使用范圍內(nèi),建議用穩(wěn)壓模塊較合適,在設(shè)計(jì)中也可用穩(wěn)壓芯片輸出負(fù)壓來(lái)穩(wěn)壓,同樣能使液晶正常驅(qū)動(dòng)。
SPCE061A單片機(jī)配置2個(gè)16位的并行I/O口:A口和B口,提供32個(gè)I/O線(xiàn)。其中,A口16個(gè)(IOA0~I(xiàn)OA15),B口16個(gè)(IOB0~I(xiàn)OB15)。它們都是16位可編程,具有位控制結(jié)構(gòu)的I/O端口,每一位都可以被單獨(dú)定義用于輸入或輸出數(shù)據(jù)。對(duì)某一位的設(shè)定包括以下3個(gè)基本項(xiàng):數(shù)據(jù)向量Data、屬性向量Attribution和方向控制向量Direction。
因此,在設(shè)計(jì)中,通過(guò)SPCE061A單片機(jī)內(nèi)置的I/O口電路和利用匯編語(yǔ)言對(duì)I/O端口的功能設(shè)置,就可以很簡(jiǎn)單的完成液晶模塊接口的設(shè)置。?
對(duì)液晶模塊的軟件采用三層模式設(shè)計(jì):底層程序設(shè)計(jì)、上層程序設(shè)計(jì)和應(yīng)用層程序設(shè)計(jì)。?底層程序設(shè)計(jì)完成對(duì)液晶模塊的底層驅(qū)動(dòng)。主要是編寫(xiě)基于對(duì)T6963C指令應(yīng)用的子函數(shù),從而能夠直接調(diào)用函數(shù)驅(qū)動(dòng)液晶模塊,讀寫(xiě)液晶屏數(shù)據(jù)。
T6963C控制器的指令很豐富,通過(guò)分析,建立雙參數(shù)指令子函數(shù)OutCmd2()、單參數(shù)指令子函數(shù)OutCmd1()和無(wú)參數(shù)指令子函數(shù)OutCmd0()。底層驅(qū)動(dòng)用匯編語(yǔ)言編寫(xiě),以4個(gè)函數(shù)作為底層驅(qū)動(dòng)函數(shù):讀數(shù)據(jù)、寫(xiě)數(shù)據(jù)、讀狀態(tài)、寫(xiě)指令。如對(duì)指令寫(xiě)入子函數(shù)OutCmd的編寫(xiě),其底層驅(qū)動(dòng)程序的建立,源代碼如下:
完成了對(duì)底層驅(qū)動(dòng)函數(shù)的編寫(xiě),第二步設(shè)計(jì)就是編寫(xiě)上層驅(qū)動(dòng)函數(shù)。上層驅(qū)動(dòng)函數(shù)編寫(xiě)的出發(fā)點(diǎn)是保證靈活性和可移植性,利用底層的4個(gè)驅(qū)動(dòng)子函數(shù),向應(yīng)用部分提供各種常用操作。上層函數(shù)用C語(yǔ)言編寫(xiě)。例如,液晶模塊的初始化等。
上層驅(qū)動(dòng)子函數(shù)的建立,源代碼如下:
完成了上層驅(qū)動(dòng)子函數(shù)的編寫(xiě),就可以調(diào)用它,建立應(yīng)用層,編寫(xiě)軟件模塊。如:顯示靜態(tài)菜單等等。
應(yīng)用層的建立,源代碼如下:
從上面的設(shè)計(jì)可以看到用三層軟件模塊設(shè)計(jì)思想,可以很快的在應(yīng)用層中調(diào)用子函數(shù)來(lái)編寫(xiě)程序,并且編寫(xiě)很簡(jiǎn)單,如漢字顯示等。對(duì)于復(fù)雜的菜單設(shè)計(jì),更能突出這種軟件設(shè)計(jì)思想的優(yōu)勢(shì)。
介紹了SPCE061A單片機(jī)驅(qū)動(dòng)內(nèi)含T6963C控制器的圖形液晶模塊。它利用豐富的I/O口資源驅(qū)動(dòng)液晶模塊,簡(jiǎn)化了電路設(shè)計(jì),并結(jié)合T6963C控制器的圖形液晶模塊的指令特點(diǎn),設(shè)計(jì)出液晶模塊軟件驅(qū)動(dòng)模式,使得在對(duì)驅(qū)動(dòng)液晶模塊的軟件編寫(xiě)上更方便,這一設(shè)計(jì)思想在實(shí)際應(yīng)用中取得了很好的效果。