LCD在线
设为首页

加入收藏
当前位置: 首页->应用技术-> 驱动软件 文章浏览

KM12864A系列液晶的A51驱动代码(适用S6B0108控制器)

日期:2006年5月23日 来源:深圳市炜烨兴电子有限公司 作者:Wayeah


文章搜索:
 

一、KM12864A模块的硬件结构
1、KM12864A由两片带控制器的列驱动电路KS0108和一片行驱动电路KS0107组成主要的硬件电路。另外还可以附加负压发生电路、分压电路。显示方面由一片128*64点的液晶片组成。
2、两片KS0108将显示区分为左右半屏,整个屏从上到下64行分为8页,每页8行,页地址范围为:B8H-BFH。列地址范围为:40H-7FH。数据为纵向读写,即每页的第一行对应D0....第八行对应D7.
3、控制器KS0108的指令相当简单,总共7条指令:显示开关设定(3EH/3FH),显示起始行设定(C0H-FFH),页地址设定(B8H-BFH),列地址设定(40H-7FH),状态读取,写数据,读数据。
二、KM12864A接口定义及其与MCS51单片机接口
三、驱动程序
1、初始化
 RW bit P3.1 ;读写选通通道
  E bit P3.0 ;使能
 RS bit P3.3 ;数据/指令选择通道
CS1 bit P3.4 ;选通
CS2 bit P3.5 ;右半屏选通
CHARC bit 40H ;数据代码
PAGE1 bit 41H ;页地址
  COL bit 42H;列地址
 LINE bit 43H ;显示起始行

INT: ;模块初始化
    MOV A,#0C0H ;显示起始行为第一行 
    LCALL W_COM1 
    LCALL W_COM2 
    MOV A,#03FH ;开显示 
    LCALL W_COM1 
    LCALL W_COM2 
    RET
2、读状态
R_BUSY:  ;同时读取两个片KS0108的状态
    MOV A,#0FFH 
    MOV P1,A 
    NOP 
    NOP 
BUSY:
    SETB CS1 
    SETB CS2 
    SETB RW 
    CLR RS 
    SETB E 
    MOV A,P1
    CLR  E 
    JB ACC.7,BUSY 
    RET
3、写指令
W_COM1: ;写左半屏 
    LCALL R_BUSY 
    SETB CS1;右半屏 
    CLR CS2 
    CLR RW 
    CLR RS 
    MOV P1,A 
    SETB E 
    CLR E 
    RET
W_COM2: ;写右半屏 
    LCALL R_BUSY 
    SETB CS2 
    CLR CS1 
    CLR RW 
    CLR RS 
    MOV P1,A 
    SETB E 
    CLR E 
    RET
4、写数据
W_D1: ;写左半屏 
    LCALL R_BUSY 
    SETB CS1 
    CLR CS2 
    CLR RW 
    SETB RS 
    MOV P1,A 
    SETB E 
    CLR E 
    RET
W_D2: ;写右半屏 
    LCALL R_BUSY 
    SETB CS2 
    CLR CS1 
    CLR RW 
    SETB RS 
    MOV P1,A 
    SETB E 
    CLR E 
    RET
5、在左半屏写16*16中文
CHINAL: 
    MOV A,CHARC ;CHAR CODE IN CHAR_TABLE 
    MOV DPTR,#TABLE1 
    MOV B,#032 
    MUL AB 
    ADD A,DPL 
    MOV DPL,A 
    MOV A,B 
    ADDC A,DPH 
    MOV DPH,A 
    MOV R5,#32 
    MOV A,PAGE1 
    LCALL W_COM1 
    MOV A,COL 
    LCALL W_COM1 
CHL1: 
    MOV A,#00H 
    MOVC A,@A+DPTR 
    CPL A 
    LCALL W_D1 
    INC DPTR 
    DEC R5 
    CJNE R5,#16,CHL1 
    INC PAGE1 
    MOV A,PAGE1 
    LCALL WCOM1 
    MOV A,COL 
    LCALL W_COM1
CHL2: 
    MOV A,#00H 
    MOVC A,@A+DPTR 
    CPL A 
    LCALL W_D1 
    INC DPTR 
    DJNZ R5,CHL2 
    RET
6、在左半屏写8*8英文(ASCII码)
C8x8R: 
    MOV A,CHARC 
    MOV DPTR,#TABLE 
    MOV B,#08H 
    MUL AB 
    ADD A,DPL 
    MOV DPL,A 
    MOV A,B 
    ADDC A,DPH 
    MOV DPH,A 
    MOV A,PAGE1 
    LCALL W_COM1 
    MOV A,COL 
    LCALL W_COM1 
    MOV R5,#08H
RR1: 
    MOV A,#00H 
    MOVC A,@A+DPTR 
    CPL A 
    LCALL WD2 
    INC DPTR 
    DJNZ R5,RR1 
    RET
KM12864J2


这些内容来自LCD在线(http://www.lcdinline.com),如需转载,请联系网站管理QQ:56154083

基于S6B0724驱动控制的12864液晶C51程序 《上一篇 | 下一篇》  12232外振荡源的总线驱动代码

编辑: 2008-4-12 18:47:06


 

打印本页 收藏本页 关闭本页

Copyright © 2002-2005 LCD在线 All Right Reserved
QQ:56154083 电话:13714759758 同LCD在线联系