
1、對(duì)LCDCON寄存器的配置
LCDCON寄存器如圖2所示:
其中:LCDEN:LCD模塊使能;SLPEN:休眠模式使能;VGEN:內(nèi)部電壓產(chǎn)生使能;CS1:CS0:LCD時(shí)鐘選擇位,“00”=Fosc/256,Fosc=4MHz;LMUX1:LUMX2:公共端數(shù)目與偏置選擇,“10”=3公共端,1/3偏置。
我采用的配置碼為:10000010。
對(duì)LCDPS寄存器的配置
LCDPS寄存器如圖3所示:
其中:LP3:LP0幀時(shí)鐘分頻選擇位
我采用的配置碼為:***0011,其中“*”代表“0”或“1”。

依據(jù)幀頻率計(jì)算公式,幀頻率為:
Clock source/96(LP3:LP1+1)
=4×106/96×(3+1)×256
=40.69Hz
2、像素控制
像素由像素寄存器的第一個(gè)狀態(tài)位唯一確定。LCD模塊共有16個(gè)像素寄存器,最多可控制4×29=116個(gè)像素。我們采用的LCD共有8×8=64個(gè)像素。因此,像素?cái)?shù)據(jù)寄存器是足夠用了。LCD的像素?cái)?shù)據(jù)寄存器如圖4所示:
位7:位0:SEGSCOMC表示控制像素?cái)?shù)據(jù)的段碼和公共端數(shù)。其中,下標(biāo)“S”表示“0~32”個(gè)段碼,下標(biāo)“C”表示“1~4”個(gè)公共端。
寄存器位為“1”表示打開(kāi)像素(黑);寄存器位為“0”表示關(guān)閉像素(亮)。
3、段碼使能
段碼的使能通過(guò)LCDSE寄存器來(lái)實(shí)現(xiàn)。因?yàn)閂IM807-2是8位7段顯示器,而我們選擇的是1/3占空比(即3個(gè)公共端),因此,通過(guò)LCDSE寄存器必須選擇3×8=24段才能滿足需要,即表達(dá)完全部的碼段像素。當(dāng)然會(huì)有多余,8×9=72,因?yàn)槊?公共端和3段可以表達(dá)9個(gè)像素。公共端和段選擇方式如圖5所示。

LCDSE寄存器如圖6所示:
各位所代表的意義分別是位數(shù)、引腳功能、3COM時(shí)管腳控制段數(shù)以及選擇的控制段。
根據(jù)上述,LCDSE的控制碼為:00111011。
4、LCD驅(qū)動(dòng)電壓的產(chǎn)生
LCD驅(qū)動(dòng)電壓的產(chǎn)生有兩種辦法,內(nèi)部充電泵法或者外部梯形電阻網(wǎng)絡(luò)法。由于LCD充電泵正處在發(fā)展中,為了使設(shè)計(jì)風(fēng)險(xiǎn)減小,我們采用較為成熟的外部梯形電阻網(wǎng)絡(luò)法。使用外部梯形電阻網(wǎng)絡(luò)時(shí),VGEN(LCDCON<4>)應(yīng)清零。
5、LCD模塊配置程序
……
MAIN BCF STATUS,PRO
BSF STATUS,RP1

MOVLW 0X82
MOVWF LCDCON
}
MOVLW 0X03
MOVMF LCDPS
MOVLW 0X3B
MOVWF LCDSE
……





