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

📄 lcdc3a.a51

📁 笔段式液晶资料
💻 A51
字号:
PUBLIC _wrcom
wrcomp SEGMENT CODE
RSEG wrcomP
_wrcom:	SETB 	P1.5	                ;/CS=1
	NOP
	CALL DLY5
	CLR P1.5                ;/CS=0
	CALL DLY5
	CLR P1.3                ;/WR=0
	CALL DLY5
	NOP
	SETB P1.2               ;D=1 (100)
	CALL DLY5
	NOP
	SETB P1.3               ;/WR=1
	CALL DLY5
	NOP
	CLR P1.3                ;/WR=0
	CALL DLY5
	NOP
	CLR P1.2                ;D=0
	CALL DLY5
	NOP
	SETB P1.3               ;/WR=1
	CALL DLY5
	NOP
	CLR P1.3                ;/WR=0
	CALL DLY5
	NOP
	CLR P1.2                ;D=0
	CALL DLY5
	NOP
	SETB P1.3               ;/WR=1
	CALL DLY5
	NOP

	MOV R5,#9               ;LOOP=DATA 8 BIT +1X
	CLR C
LOOPWR: NOP
	CALL DLY5
	CLR P1.3
	CALL DLY5
	MOV A,r7
	RLC A
	MOV r7,A
	JC WR1
	CLR P1.2                ;DATA=0
	CALL DLY5
	JMP WRR
WR1:    SETB P1.2               ;DATA=1
	CALL DLY5
WRR:    SETB P1.3
	CALL DLY5
	DJNZ R5,LOOPWR
	RET

WRDD:  SETB P1.5               ;/CS=1
	CALL DLY5
	NOP
	CLR P1.5                 ;/CS=0
	CALL DLY5
	CLR P1.3                ;/WR=0
	CALL DLY5
	SETB P1.2               ;D=1 (101)
	CALL DLY5
	SETB P1.3               ;/WR=1
	CALL DLY5
	CLR P1.3                ;/WR=0
	CALL DLY5
	CLR P1.2                ;D=0
	CALL DLY5
	SETB P1.3               ;/WR=1
	CALL DLY5
	CLR P1.3                ;/WR=0
	CALL DLY5
	SETB P1.2                ;D=1
	CALL DLY5
	SETB P1.3               ;/WR=1
	CALL DLY5

	MOV R4,#6
	mov a,r7
	mov r3,a
;	MOV 22H,r7
ADDWR2: NOP
	CALL DLY5
	CLR P1.3
	CALL DLY5
	MOV A,r3
	RLC A
	MOV r3,A
	JC WR11
	CLR P1.2                ;DATA=0
	CALL DLY5
	JMP WRR1
WR11:   NOP
	CALL DLY5
	 SETB P1.2               ;DATA=1
	CALL DLY5
WRR1:   NOP
	CALL DLY5
	SETB P1.3
	CALL DLY5
	DJNZ R4,ADDWR2
	RET

PUBLIC _WRDAc
WRDAcP SEGMENT CODE
RSEG WRDAcP
_WRDAc:  MOV R5,#4               ;LOOP=DATA 4 BIT
ADDWR3s: NOP
	CALL DLY5
	CLR P1.3
	CALL DLY5
	MOV A,r7
	RRC A
	MOV r7,A
	JC WR12s
	CLR P1.2                ;DATA=0
	CALL DLY5
	JMP WRR2s
WR12s:   NOP
	CALL DLY5
	SETB P1.2               ;DATA=1
	CALL DLY5
WRR2s:   NOP
	CALL DLY5
	SETB P1.3
	CALL DLY5
	DJNZ R5,ADDWR3s
	RET


WRDA:   MOV R4,#4               ;LOOP=DATA 4 BIT
ADDWR3: NOP
	CALL DLY5
	CLR P1.3
	CALL DLY5
	MOV A,r3
	RRC A
	MOV r3,A
	JC WR12
	CLR P1.2                ;DATA=0
	CALL DLY5
	JMP WRR2
WR12:   NOP
	CALL DLY5
	SETB P1.2               ;DATA=1
	CALL DLY5
WRR2:   NOP
	CALL DLY5
	SETB P1.3
	CALL DLY5
	DJNZ R4,ADDWR3
	RET

;************************************************************
;LOOP WRDA SUB
PUBLIC _walp
walpp SEGMENT CODE
RSEG walpP
_WALP:
ST1:    mov r6,0
	;MOV r6,r7
	MOV A,r7
	ADD A,#00000100B
	MOV r7,A
	;MOV r7,A
	inc r6
	CALL WRDD
	MOV  a,r5
	mov r3,a
	CALL WRDA
	cjne R6,#31,st1
	RET


PUBLIC _WRDDc
WRDDcP SEGMENT CODE
RSEG WRDDcP
_WRDDc:  SETB P1.5               ;/CS=1
	CALL DLY5
	NOP
	CLR P1.5                 ;/CS=0
	CALL DLY5
	CLR P1.3                ;/WR=0
	CALL DLY5
	SETB P1.2               ;D=1 (101)
	CALL DLY5
	SETB P1.3               ;/WR=1
	CALL DLY5
	CLR P1.3                ;/WR=0
	CALL DLY5
	CLR P1.2                ;D=0
	CALL DLY5
	SETB P1.3               ;/WR=1
	CALL DLY5
	CLR P1.3                ;/WR=0
	CALL DLY5
	SETB P1.2                ;D=1
	CALL DLY5
	SETB P1.3               ;/WR=1
	CALL DLY5

	MOV R5,#6
;	MOV 22H,r7
ADDWR2c: NOP
	CALL DLY5
	CLR P1.3
	CALL DLY5
	MOV A,r7
	RLC A
	MOV r7,A
	JC WR11c
	CLR P1.2                ;DATA=0
	CALL DLY5
	JMP WRR1c
WR11c:   NOP
	CALL DLY5
	 SETB P1.2               ;DATA=1
	CALL DLY5
WRR1c:   NOP
	CALL DLY5
	SETB P1.3
	CALL DLY5
	DJNZ R5,ADDWR2c
	RET

PUBLIC _wr123
wr123p SEGMENT CODE
RSEG wr123P
_wr123:  nop
	SETB P1.5               ;/CS=1
	CALL DLY5
	NOP
	CLR P1.5                 ;/CS=0
	CALL DLY5
	CLR P1.3                ;/WR=0
	CALL DLY5
	SETB P1.2               ;D=1 (101)
	CALL DLY5
	SETB P1.3               ;/WR=1
	CALL DLY5
	CLR P1.3                ;/WR=0
	CALL DLY5
	CLR P1.2                ;D=0
	CALL DLY5
	SETB P1.3               ;/WR=1
	CALL DLY5
	CLR P1.3                ;/WR=0
	CALL DLY5
	SETB P1.2                ;D=1
	CALL DLY5
	SETB P1.3               ;/WR=1
	CALL DLY5

	MOV R2,#6
LOOP:   CLR P1.3                ;/WR=0
	CALL DLY5
	CLR P1.2               ;D=0 
	CALL DLY5
	SETB P1.3               ;/WR=1
	CALL DLY5
	DJNZ R2,LOOP
	
	MOV R3,#8
	MOV DPTR,#TABDA
LOOP1:  CLR A
	MOVC A,@A+DPTR
	MOV 25H,A       
	CALL WRDA
	INC DPTR
	DJNZ R3,LOOP1
	RET
TABDA:  DB 08H,05H,0DH,0BH,09H,0FH,0AH,07H;



DLY5:   NOP
	NOP
	NOP
	NOP
	RET
DLY25M: MOV R1,#250             ;12M/2.5MS
DLOP:   CALL DLY5
	CALL DLY5
	DJNZ R1,DLOP
	RET
DLY1S:  MOV R0,#20             ;1S
DLOP1:  CALL DLY25M
	CALL DLY25M
	DJNZ R0,DLOP1
	RET

PUBLIC _delay500
delay500p SEGMENT CODE
RSEG delay500p
_delay500: MOV R0,#5
DLOP11: CALL DLY25M
	CALL DLY25M
	DJNZ R0,DLOP11
	RET

END

⌨️ 快捷键说明

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