⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 12864-+

📁 RM51单片机实验板配套实验例程库
💻
📖 第 1 页 / 共 2 页
字号:
;  OCM12864 系列图形点阵液晶显示模块测试程序
;  肇庆金鹏电子有限公司Golden Palm Electronics Co.,Ltd. 
;  http://www.gptlcm.cn
;  地址:肇庆市建设四路13 号天宁广场E 幢13、14、15 楼
;  邮编:526040 E_mail: syl@gptlcm.cn


RS	EQU	P2.0			;Data or Instrument Select,H:写数据,L:写指令
RW	EQU	P2.1			;Write or Read,H:read,L:write
E	EQU	P2.2			;读写使能
CS1	EQU	P2.3			;CS1=H,选择左半屏
CS2	EQU	P2.4			;CS2=H,选择右半屏
RESET	EQU	P2.5			;Lcm reset,低有效
	
DISP_X	EQU	30H
DISP_Y	EQU	31H
DISP_Z	EQU	32H
LONG	EQU	33H
WIDE	EQU	34H
DATA1_WR	EQU	35H
DATA2_WR	EQU	36H
COUNTER1	EQU	37H
COUNTER2	EQU	38H
COUNTER3	EQU	39H
;**********************************************
		ORG	0000H
		AJMP	MAIN
		ORG	0100H
MAIN:		MOV	SP,#5FH
		CLR	RESET		;复位液晶模块
		NOP
		NOP
		NOP
		SETB	RESET

;**********************************************
LGS1:		SETB	CS1
		CLR	CS2
		MOV	DISP_X,#0B8H	;设置为第一页数据
		MOV	DISP_Y,#40H	;设置列地址为0
		MOV	LONG,#40H	;数据长度为64字节
		MOV	WIDE,#02H
		MOV	DPTR,#HZ11	;显示数据块地址
		LCALL	CHN_DISP
		MOV	DISP_X,#0BAH
		MOV	DPTR,#HZ21
		LCALL	CHN_DISP
		MOV	DISP_X,#0BCH
		MOV	DPTR,#HZ31
		LCALL	CHN_DISP
		MOV	DISP_X,#0BEH
		MOV	DPTR,#HZ41
		LCALL	CHN_DISP
		
		CLR	CS1
		SETB	CS2
		MOV	DISP_X,#0B8H
		MOV	DISP_Y,#40H
		MOV	LONG,#40H
		MOV	WIDE,#02H
		MOV	DPTR,#HZ12
		LCALL	CHN_DISP
		MOV	DISP_X,#0BAH
		MOV	DPTR,#HZ22
		LCALL	CHN_DISP
		MOV	DISP_X,#0BCH
		MOV	DPTR,#HZ32
		LCALL	CHN_DISP
		MOV	DISP_X,#0BEH
		MOV	DPTR,#HZ42
		LCALL	CHN_DISP
		LCALL	DELAY1
;		AJMP	$
;----------------------------------------------
LGS2:		SETB	CS1
		SETB	CS2
		MOV	DATA1_WR,#0FFH
		MOV	DATA2_WR,#0FFH
		LCALL	WRLATTICE
		LCALL	DELAY1
;		AJMP	$		
;----------------------------------------------
LGS3:		SETB	CS1
		SETB	CS2
		MOV	DISP_X,#0B8H
		MOV	DISP_Y,#40H
		MOV	LONG,#20H
		MOV	WIDE,#04H
		MOV	DPTR,#GPTB1
		LCALL	CHN_DISP
		MOV	DISP_X,#0B8H
		MOV	DISP_Y,#60H
		MOV	DPTR,#GPTB2
		LCALL	CHN_DISP
		
		MOV	DISP_X,#0BCH
		MOV	DISP_Y,#40H
		MOV	DPTR,#GPTB2
		LCALL	CHN_DISP
		MOV	DISP_X,#0BCH
		MOV	DISP_Y,#60H
		MOV	DPTR,#GPTB1
		LCALL	CHN_DISP
		
		LCALL	DELAY1
;		AJMP	$
;----------------------------------------------
LGS4:		SETB	CS1
		SETB	CS2
		MOV	DATA1_WR,#0FFH
		MOV	DATA2_WR,#00H
		LCALL	WRLATTICE
		LCALL	DELAY1

;----------------------------------------------
LGS5:		MOV	DPTR,#COCK
		LCALL	PHO_DISP
		LCALL	DELAY1

;		AJMP	$

;----------------------------------------------
LGS6:		SETB	CS1
		SETB	CS2
		MOV	DATA1_WR,#33H
		MOV	DATA2_WR,#33H
		LCALL	WRLATTICE
		LCALL	DELAY1

;----------------------------------------------
		LJMP	LGS1

;**********************************************
WRLATTICE:	MOV	COUNTER1,#08H		;写点阵
		MOV	DISP_X,#0B8H
		MOV	DISP_Z,#0C0H
		MOV	DISP_Y,#40H
		LCALL	DISP
LATTICE1:	LCALL	WR_ZB
		MOV	COUNTER2,#20H
LATTICE2:	MOV	A,DATA1_WR
		LCALL	WR_DATA
		MOV	A,DATA2_WR
		LCALL	WR_DATA
		DJNZ	COUNTER2,LATTICE2
		INC	DISP_X
		DJNZ	COUNTER1,LATTICE1
		RET
;----------------------------------------------
PHO_DISP:	MOV	COUNTER1,#08H		;全屏显示图形
		MOV	DISP_X,#0B8H
		MOV	DISP_Z,#0C0H
		MOV	DISP_Y,#40H
PHO_DISP1:	SETB	CS1
		CLR	CS2
		LCALL	DISP
		LCALL	WR_ZB
		MOV	COUNTER2,#40H
PHO_DISP11:	CLR	A
		MOVC	A,@A+DPTR
		LCALL	WR_DATA
		INC	DPTR
		DJNZ	COUNTER2,PHO_DISP11
PHO_DISP2:	CLR	CS1
		SETB	CS2
		LCALL	DISP
		LCALL	WR_ZB
		MOV	COUNTER2,#40H
PHO_DISP21:	CLR	A
		MOVC	A,@A+DPTR
		LCALL	WR_DATA
		INC	DPTR
		DJNZ	COUNTER2,PHO_DISP21
		INC	DISP_X
		DJNZ	COUNTER1,PHO_DISP1
		RET
;----------------------------------------------
CHN_DISP:	LCALL	DISP			;显示LONGxWIDE大小的图形
		MOV	COUNTER1,WIDE
CHN_DISP1:	LCALL	WR_ZB
		MOV	COUNTER2,LONG
CHN_DISP2:	CLR	A
		MOVC	A,@A+DPTR
		LCALL	WR_DATA
		INC	DPTR
		DJNZ	COUNTER2,CHN_DISP2
		INC	DISP_X
		DJNZ	COUNTER1,CHN_DISP1
		RET
;----------------------------------------------
WR_ZB:		MOV	A,DISP_X
		LCALL	WR_INT
		MOV	A,DISP_Z
		LCALL	WR_INT
		MOV	A,DISP_Y
		LCALL	WR_INT
		RET
;----------------------------------------------
DISP:		MOV	A,#3EH
		LCALL	WR_INT
		MOV	A,#3FH
		LCALL	WR_INT
		RET
;**********************************************
WR_INT:		LCALL	CHE_BUSY		;WRITE	INSTRUCTION
		CLR	RS
		CLR	RW
		MOV	P0,A
		NOP
		SETB	E
		NOP
		NOP
		CLR	E
		RET
;----------------------------------------------

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -