《電子技術應用》
您所在的位置:首頁 > 其他 > 設計應用 > 簡單實用的四線點陣液晶驅動方式
簡單實用的四線點陣液晶驅動方式
晉建秀 吳運昌 甘偉明
摘要: 介紹了點陣液晶的一種四線驅動方法,該方法使用四線控制,連接簡單,、成本較低,可以用于各種漢字及圖形點陣液晶的顯示,。
Abstract:
Key words :

  摘  要: 介紹了點陣液晶的一種四線驅動方法,該方法使用四線控制,連接簡單,、成本較低,,可以用于各種漢字及圖形點陣液晶的顯示。 

  關鍵詞: 點陣液晶顯示屏  四線控制電路  漢字顯示 

   隨著科學技術的飛速發(fā)展,,電子產(chǎn)品越來越向智能化,、小型化、人性化,、低功耗等方面發(fā)展,。而液晶顯示屏的興起,為上述要求的實現(xiàn)提供了可能,。液晶顯示屏大致可分為段式、字符式,、點陣式,,或者單色、彩色等,。大多液晶顯示屏都實現(xiàn)了標準化和模塊化,,采用通用的控制芯片(例如SED1330、SED1520,、HD61202等)實現(xiàn)與單片機等的簡單連接,,但此類液晶顯示模塊多采用并行的數(shù)據(jù)線和控制線連接。在實際應用中,,考慮到產(chǎn)品的成本和體積,,采用并行的數(shù)據(jù)線和控制線連接,使用起來不是很方便,。因此希望采用標準的工業(yè)總線I2C,、SPI等連接,而這類產(chǎn)品卻很少見,。本文巧妙地利用液晶顯示模塊的特點,,采用一片74LS164實現(xiàn)液晶的四線控制,電路簡單實用,。 

1 點陣液晶顯示模塊簡介 

  本文介紹的是一種采用SED1520芯片控制的122×32圖形點陣液晶顯示屏,,它主要由行驅動/列驅動及122×32全點陣液晶顯示器組成,可完成圖形顯示,,也可顯示七個半(16×16點陣)漢字,。主要技術參數(shù)和顯示特性如下: 

  ·電源:VDD為+3V~+5V;LCD外接驅動電壓VDD-VLCD=5.0V。 

  ·顯示內容:122(列)×32(行)點,。 

  ·顯示顏色:黃綠底藍字,。 

  ·顯示角度:6點鐘直視。 

  ·STN正視反射模式。 

  ·驅動方式:1/32 Duty,,1/6 Bias,。 

  ·驅動電流:最大240μA。 

    液晶顯示模塊驅動原理圖如圖1所示,。

 

 

  液晶顯示模塊引腳特性如表1所示,。 

 

 

  部分傳送指令表如表2所示。 

 

 

2 四線點陣液晶顯示屏驅動電路 

  四線點陣液晶顯示屏驅動電路如圖2所示,。 

 

 

  系統(tǒng)采用一片74LS164以串入并出方式與點陣液晶顯示模塊FM12232C連接,,通過四條信號線(SDA串行數(shù)據(jù)線、CLK/A0串行時鐘線即液晶顯示模塊的A0數(shù)據(jù)/指令控制線,、E1主驅動芯片使能線,、E2從驅動芯片使能線)實現(xiàn)點陣液晶顯示屏的驅動。與液晶顯示模塊所提供的電路連接方式相比,,四條線與單片機2051連接至少減少7根口線,,這樣大大節(jié)省了小型電子產(chǎn)品中寶貴的單片機口線資源,使產(chǎn)品更加人性化和智能化,。 

  根據(jù)液晶顯示屏的控制指令及時序可知,,只要在對模塊寫入數(shù)據(jù)的同時保證模塊指令操作延時足夠,就可以不檢查模塊狀態(tài),,達到直接控制的目的,。點陣液晶顯示屏的一個點對應存儲器中的一位,置位則顯示,,清除則不顯示,,因此只要控制相應的數(shù)據(jù)位就可控制液晶顯示屏的顯示。液晶顯示模塊的顯示數(shù)據(jù)采用分頁方式存儲(存儲器的劃分請參閱相關資料),。 

  數(shù)據(jù)傳送時,,首先選擇使能端“E1”或“E2”,送數(shù)據(jù)到74LS164,,然后送指令/數(shù)據(jù)選擇信號“A0”,,關閉使能端,實現(xiàn)數(shù)據(jù)和指令的傳送,,使液晶顯示屏顯示圖形或漢字等,。 

3 相關軟件 

  相關軟件采用匯編語言編寫。由于篇幅限制,,只提供傳送指令和數(shù)據(jù)到液晶顯示模塊的子程序,,并通過初始化程序和顯示漢字程序介紹如何使用上述子程序。關于顯示漢字子程序,、其它顯示字符串,、動畫,、圖形以及在Windows下提取字庫和圖形庫相關程序,如有需要請與作者聯(lián)系,。 

  源程序如下: 

    sda     bit     p1.7    ;定義sda線 

    clk     bit     p1.6    ;定義clk線 

    e1      bit     p1.5    ;定義master 使能 

    e2      bit     p1.4    ;定義slave使能 

    a0      bit     p1.6    ;定義數(shù)據(jù)/指令選擇線 

    outmi:                  ;送顯示指令到master SED1520 

        setb    e1      ;master使能 

        clr     e2      ;slave關閉 

        lcall   trndata     ;傳送一個字節(jié) 

    clr     a0  ;設置此字節(jié)為指令 

    clr     e1  ;master關閉 

    ret 

    outsi:      ;送顯示指令到slave  SED1520 

        setb    e2 

        clr     e1 

        lcall   trndata 

        clr     a0 

        clr     e2 

        ret 

    outmd:      ;送顯示數(shù)據(jù)到master     SED1520 

        setb    e1 

        clr     e2 

        lcall   trndata 

        setb    a0 

        clr     e1 

        ret 

    outsd:      ;送顯示數(shù)據(jù)到slave SED1520 

        setb    e2      ;slave使能 

        clr     e1      ;master關閉 

        lcall   trndata ;傳送一個字節(jié) 

        setb    a0      ;設置此字節(jié)為顯示數(shù)據(jù) 

        clr     e2      ;slave關閉 

        ret 

    trndata:                ;傳送一個字節(jié)到液晶顯示模塊 

        push        a       ;保存原始數(shù)據(jù) 

        setb        sda     ;sda線置位 

        setb        clk     ;clk線置位 

        mov         r7,,#08h 

    trn_loop:    

        rlc     a 

        clr     clk 

        mov     sda,C 

        setb    clk 

        djnz    r7,,trn_loop 

        pop     a   ;恢復原始數(shù)據(jù) 

        ret 

    init:               ;初始化液晶顯示模塊 

        mov    a,,#0e3h ;LCD復位 

        lcall   outmi 

        lcall   outsi 

        mov    a,#0aeh  ;關顯示 

        lcall   outmi 

        lcall   outsi 

        mov    a,,#0a4h  ;動態(tài)驅動  

        lcall   outmi 

        lcall   outsi 

        mov   a,,#0a9h  ;刷新率選擇1/32 

        lcall   outmi 

        lcall   outsi 

        mov   a,#0a0h   ;ADC選擇右移 

        lcall   outmi 

        lcall   outsi 

        mov   a,,#0eeh   ;結束讀寫 

        lcall   outmi 

        lcall   outsi 

        mov   a,,#00h    ;設置列地址0 

        lcall   outmi 

        lcall   outsi 

        mov   a,#0c0h   ;設置顯示開始行0 

        lcall   outmi 

        lcall   outsi 

        mov   a,,#0afh          ;開顯示 

        lcall   outmi 

        lcall   outsi 

        ;下面為漢字顯示 

            mov  r1,,#20            ;漢字顯示的起始為第 20列 

        mov     dptr,#tian     ;“天”字字庫地址 

        clr     10h        ;10h=‘0’顯示在第一行 

        mov     1fh,,#10h      ;1fh=‘10h’表示為16×16 點陣 

        lcall       dishz          ;調用顯示漢字子程序 

    ;子程序名稱:    dishz     

    ;dptr:          對應字庫的起始地址 

    ;r1:        顯示數(shù)據(jù)在122列中的起始列 

    ;位10h:    0——顯示在第一行,1——顯示在第二行 

    ;1fh:       顯示漢字16×16=10h,,顯示字符16×8=8h 

參考文獻 

1 何立民. 單片機應用系統(tǒng)設計. 北京: 北京航空航天大學出版社,,1990 

2 李維言是,郭 強.液晶顯示應用技術. 北京:電子工業(yè)出版社,,2000 

3 孫德和,,袁 鉞.常用集成電路芯片IC參考大全. 北京:海洋出版社,1992

此內容為AET網(wǎng)站原創(chuàng),,未經(jīng)授權禁止轉載,。