LCD显示汉字程序_质与感的空间_百度空间
LCD GDM12864A 是带显示存储器的图形液晶显示列驱动控制器。它的特点是内置64×64 位的显示存储器,显示屏上各像素点的显示状态与显示存储器的各位数据—一对应,显示存储器的数据直接作为图形显示的驱动信号。显示数据为“1,相应的像素点显示;显示数据为“0 “,相应的像素点就不显示。    

本次实验主要是要了解一下在LCD上显示汉字的方法,实验板上的LCD屏幕的结构为128×64 位的显示存储器,由两片64×64位的存储器构成。其结构和行列划分如下图所示:

128X64LCD的结构

     对于每一片64X64LCD来说,在本实验中被划分成了8页和64列,列具有自动加一的功能,在每一次的读写数据后将列地址将自动加1,其具体的结构如下图所示,每片上可以显示16X16的汉字16个,每排显示4个,分四排显示。 《点击图片可看大图》

汉字的取模方式有很多种,如横向取模,纵向取模,汉字经过变换之后再取模等,不论那种取模方式,只要弄清楚汉字的取模方式,按取模方式来编写显示程序,这样就可以将汉字完好的显示出来。

附:LCD显示源程序:

;端口定义
        CS1 EQU P2.3H
        CS2 EQU P2.4H
        DI EQU P2.2H
        RW EQU P2.1H
        E   EQU P2.0H
        X   EQU 20H
        Y   EQU 21H
        ZC EQU 22H
        LFT EQU 7FH

;程序入口
        ORG 00H
        AJMP START
        ORG 30H

START: MOV 20H,#3EH            ;关显示设置
        ACALL WI                ;写控制指令
        INC 20H                 ;开显示设置
        ACALL WI                ;
        MOV 20H,#0C0H           ;设置显示起始行为{dy}行
        ACALL WI                ;
        MOV X,#0                ;设置X为第1页

        MOV Y,#0                ;列计数器Y=0
        CLR LFT                 ;LCD 屏幕(左)
        MOV DPTR,#HANG          ;杭
        ACALL HZ_1              ;调用显示汉字子程序
        MOV Y,#1                ;设置列
        MOV DPTR,#ZHOU          ;州
        ACALL HZ_1              ;
        MOV Y,#2                ;
        MOV DPTR,#KANG          ;康
        ACALL HZ_1              ;       
        MOV Y,#3                ;
        MOV DPTR,#XIN           ;芯       
        ACALL HZ_1              ;  
    
        MOV Y,#0                ;列计数器Y=0        
        SETB LFT                ;LCD 屏幕(右)        
        MOV DPTR,#DIAN          ;电       
        ACALL HZ_1              ;
        MOV Y,#1                ;
        MOV DPTR,#ZI            ;子       
        ACALL HZ_1              ;      
        MOV Y,#2                ;
        MOV DPTR,#GONG          ;公
        ACALL HZ_1              ;
        MOV Y,#3                ;
        MOV DPTR,#SI            ;司
        ACALL HZ_1              ;
        SJMP $                  ;程序结束

;以下程序显示一个汉字

HZ_1:   MOV ZC,#0               ;先读偶地址
        MOV A,#0B8H             ;X addr 页面地址暂存器设置,为页面0
        ACALL HZ_3              ;跳转至HZ_3
        MOV ZC,#1               ;再读奇地址
        MOV A,#0B9H             ;X addr 页面地址暂存器设置,为页面1
HZ_3:   ADD A,X ;               ;调整页面     
        MOV 20H,A               ;
        ACALL WI                ;
        MOV A,Y                 ;调整列地址
        SWAP A                  ;累加器高低四位互换
        ADD A,#40H              ;设置列计数器Y,DB6必须为1
        MOV 20H,A
        ACALL WI                ;
HZ_0:   MOV R2,#16              ;取汉字字模,R2为模16的计数器
HZ_2:   MOV A,ZC                ;
        MOVC A,@A+DPTR          ;
        MOV 20H,A               ;
        MOV A,ZC                ;ZC+2-->ZC
        ADD A,#2                ;
        MOV ZC,A                ;
        JB LFT,HZ_5             ;判断是写左还是右LCD
        ACALL WD1               ;
        SJMP HZ_6               ;
HZ_5:   ACALL WD2               ;
HZ_6:   DJNZ R2,HZ_2            ;R2-1!=0,继续读字库,否则返回
        RET                     ;

;检测是否空闲
RDY:    CLR DI                  ;0 1
        SETB RW                 ;
        SETB E                  ;
        MOV A, P0               ;读LCD 状态
        CLR E                   ;
        JB ACC.7,RDY            ;检测BUSY 位
        RET                     ;
      
;写控制指令
WI:     SETB CS1                ; 1 1
        SETB CS2                ;
        LCALL RDY               ;检测BUSY 位
        CLR DI                  ;0 0
        CLR RW                  ;
        MOV P0,20H              ;向LCD 写数据
        SETB E                  ;使能信号E=1
        CLR E                   ;使能信号E=0
        CLR CS1                 ;
        CLR CS2                 ;
        RET                     ;
       
;写显示数据(左)
WD1:    SETB CS1                ;
        LCALL RDY               ;检测BUSY 位
        SETB DI                 ; 1 0
        CLR RW                  ;
        MOV P0,20H              ; 输出数据
        SETB E                  ;
        CLR E                   ;
        CLR CS1                 ;
        RET                     ;
       
;写显示数据(右)
WD2:    SETB CS2                ;
        LCALL RDY               ;检测BUSY 位
        SETB DI                 ;
        CLR RW                  ;
        MOV P0,20H              ;输出数据
        SETB E                  ;使能信号E=1
        CLR E                   ;使能信号E=0
        CLR CS2                 ;              
        RET                     ;

;汉字点阵“杭州康芯电子有限公司”

HANG:   DB 08H,04H,10H,03H,0D0H,00H,0FFH,0FFH
        DB 90H,80H,10H,41H,08H,20H,0C8H,1FH
        DB 49H,00H,4EH,00H,48H,00H,0E8H,3FH
        DB 4CH,40H,08H,40H,00H,70H,00H,00H
       
ZHOU:   DB 80H,00H,70H,40H,00H,30H,0FFH,0FH
        DB 00H,00H,10H,00H,60H,00H,00H,00H
        DB 0FEH,3FH,00H,00H,10H,00H,60H,00H
        DB 00H,00H,0FFH,0FFH,00H,00H,00H,00H
       
KANG:   DB 00H,40H,00H,30H,0FCH,0FH,44H,40H
        DB 54H,23H,54H,15H,54H,49H,55H,18H
        DB 0FEH,7FH,54H,05H,54H,09H,54H,11H
        DB 0F4H,29H,46H,64H,44H,20H,00H,00H
       
XIN:    DB 04H,08H,04H,07H,04H,00H,04H,3FH
        DB 1FH,40H,04H,40H,44H,40H,84H,40H
        DB 04H,43H,04H,40H,1FH,40H,04H,40H
        DB 04H,70H,06H,01H,04H,0EH,00H,00H
       
DIAN:   DB 00H,00H,0F8H,07H,48H,02H,48H,02H
        DB 48H,02H,48H,02H,0FFH,3FH,48H,42H
        DB 48H,42H,48H,42H,48H,42H,0FCH,47H
        DB 08H,40H,00H,70H,00H,00H,00H,00H
       
ZI:     DB 80H,00H,80H,00H,82H,00H,82H,00H
        DB 82H,00H,82H,40H,82H,80H,0E2H,7FH
        DB 0A2H,00H,92H,00H,8AH,00H,86H,00H
        DB 80H,00H,0C0H,00H,80H,00H,00H,00H
       
YOU:    DB 04H,04H,04H,02H,04H,01H,84H,00H
        DB 0E4H,0FFH,3CH,09H,27H,09H,24H,09H
        DB 42H,09H,42H,49H,24H,89H,0F4H,7FH
        DB 42H,00H,06H,00H,04H,00H,00H,00H
       
XIAN:   DB 00H,00H,7FH,0FFH,02H,08H,22H,10H
        DB 0DAH,08H,06H,07H,00H,00H,0FEH,0FFH
        DB 92H,24H,92H,42H,92H,42H,92H,14H
        DB 0FFH,22H,02H,61H,00H,20H,00H,00H
       
GONG:   DB 00H,01H,00H,01H,80H,00H,40H,30H
        DB 30H,28H,0CH,42H,00H,23H,0C0H,20H
        DB 06H,20H,18H,28H,20H,30H,40H,60H
        DB 80H,00H,80H,01H,80H,00H,00H,00H
       
SI:     DB 10H,00H,10H,00H,92H,3FH,92H,10H
        DB 92H,10H,92H,10H,92H,10H,92H,10H
        DB 0D2H,3FH,9AH,00H,12H,40H,02H,80H
        DB 0FFH,7FH,02H,00H,00H,00H,00H,00H


        END

*********************************************************************** 完 **************************************************************************



郑重声明:资讯 【LCD显示汉字程序_质与感的空间_百度空间】由 发布,版权归原作者及其所在单位,其原创性以及文中陈述文字和内容未经(企业库qiyeku.com)证实,请读者仅作参考,并请自行核实相关内容。若本文有侵犯到您的版权, 请你提供相关证明及申请并与我们联系(qiyeku # qq.com)或【在线投诉】,我们审核后将会尽快处理。
—— 相关资讯 ——