新聞中心

        EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > PIC16F877單片機的液晶顯示模塊接口技術(shù)

        PIC16F877單片機的液晶顯示模塊接口技術(shù)

        作者: 時間:2013-03-21 來源:網(wǎng)絡(luò) 收藏

        Disp ;開E1顯示
        movlw 0xal ;將控制命令放在W中
        call Cwe
        bsf PORTB,4 ;E1=1
        call Ste ;判是否忙
        bsf STATUS,RP0
        clrf TRISD ;設(shè)置D口輸出方式
        bcf STATUS,RP0
        bsf PORTB,4 ;E1=1
        bsf PORTB,1 ;R/W=1
        bcf PORTB,0 ;A0=0
        bsf STATUS,RP0
        movlw 0xff
        movwf TRISD ;設(shè)置D口輸入方式
        bcf STATUS,RP0
        movf PORTD,0
        movwf lcdflag ;讀入狀態(tài)并查詢
        btfsc lcdflag,5 ;是否確定打開
        goto Disp
        return
        Disoff ;關(guān)E1顯示
        movlw 0xae ;控制命令入在W中
        call Cwe
        bsf PORTB,4 ;E1=1
        bsf PORTB,1 ;R/W=1
        bcf PORTB,0 ;A0=0
        bsf STATUS,RP0
        movlw 0xff
        movwf TRISD
        bcf STATUS,RP0
        movf PORTD,0
        movwf lcdfiag ;讀入狀態(tài)并查詢
        btfss lcdfiag,5 ;判是否關(guān)閉
        gogo Disoff
        return
        Cler ;清屏
        movlw 0xb8 ;設(shè)置頁地址代碼
        movwf pageadd
        movlw 0x04
        movwf pagenum ;設(shè)置總頁數(shù)
        clr1 movf pageadd,0
        call Cwe
        movlw 0x50 ;設(shè)置總列數(shù)
        movwf clmsum ;80或60列
        movlw 0x00
        movwf clmadd ;設(shè)置起始列
        clr2 movlw 0x00
        call Dwe ;寫入00H
        clar decfsz clmsum,1 ;本頁未清完
        goto pageadd,1 ;頁號增1
        decfsz pagenum,1 ;4頁未清完
        goto clr1 ;返回繼續(xù)
        return
          有了以上的通用子程序,就可以構(gòu)造出各種顯示程序,如字符、漢字、曲線等。當(dāng)然,在這些程序執(zhí)行前必須對液晶進行初始化。初始化的順序為:關(guān)顯示→正常顯示驅(qū)動設(shè)置→占空比設(shè)置→復(fù)位→ADC選擇→清屏→開顯示。程序如下:
        初始化子程序
        Lcdinit
        call Disoff ;關(guān)顯示
        movlw 0xa4 ;靜態(tài)顯示驅(qū)動
        call Cwe
        movlw 0xe2 ;復(fù)位
        call Cwe
        movlw 0xa0 ;ADC選擇正常輸出
        call Cwe
        movlw 0x9 ;占空比為1/32
        call Cwe
        call Cler ;清零
        call Disp ;開顯示
        return

          對于字符、漢字和曲線顯示的原理是類似的。它們都是以字節(jié)為單位進行顯示。關(guān)鍵在于形成字模庫時必須保證每個上字節(jié)數(shù)據(jù)的最高位是與每一列最下面一個點相對應(yīng),最低位與每一列最上面點相對應(yīng)。當(dāng)然,這可以用專門的軟件來生成相應(yīng)的代碼,然后再將這些代碼逐字節(jié)地寫到相應(yīng)的頁和列。

          結(jié)束語

          PIC與液晶模塊的接口只在硬件上滿足液晶模塊的接口要求,軟件上能夠模擬出要求的時序,并且初始化正確后,就可以隨心所欲地顯示信息了。以上接口電路和程序在PIC試驗板上調(diào)試通過,可作為其他與LCD接口的參考。


        上一頁 1 2 3 下一頁

        評論


        相關(guān)推薦

        技術(shù)專區(qū)

        關(guān)閉
        主站蜘蛛池模板: 汽车| 清涧县| 呼伦贝尔市| 杭州市| 长宁区| 仁怀市| 南岸区| 都兰县| 澄城县| 定远县| 鹤山市| 天镇县| 汕尾市| 雷波县| 荣昌县| 延川县| 海口市| 麻江县| 天等县| 从化市| 罗定市| 东安县| 都昌县| 松阳县| 长治县| 甘德县| 罗江县| 内乡县| 通辽市| 南和县| 巨鹿县| 新泰市| 吉木萨尔县| 砚山县| 汉川市| 通海县| 淳化县| 岱山县| 大足县| 武威市| 横山县|