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

📄 新建 文本文档.asm

📁 keil上面编写的1602通用液晶驱动驱动程序 为汇编语言编写
💻 ASM
字号:
D0 BIT P2.0
D1 BIT P2.1
D2 BIT P2.2
D3 BIT P2.3
D4 BIT P2.4
D5 BIT P2.5
D6 BIT P2.6
D7 BIT P2.7

D EQU P2

RS BIT P1.0
RW BIT P1.1
E BIT P1.2


ORG 0000H
AJMP INITIALIZATION

ORG 0030H

SENDA:
MOV SBUF,A
JNB TI,$
CLR TI
RET

DELAY15: ;精确延时15微秒子程序
	MOV R6,#1
	YS15D:MOV R7,#5
	DJNZ R7,$
	DJNZ R6,YS15D
	RET

DELAY1S: ;精确延时15微秒子程序
	MOV R6,#255
	MOV R5,#10
	YS1SD:MOV R7,#255
	DJNZ R7,$
	DJNZ R6,YS1SD
	DJNZ R5,YS1SD
	RET

WRITE_COM:
CLR RS
CLR RW
MOV D,A
SETB E
CLR E
SETB RW
SETB RS
MOV D,#0FFH
RET

WRITE_DATA:
SETB RS
CLR RW
MOV D,A
SETB E
CLR E
SETB RW
SETB RS
MOV D,#0FFH
RET

WR_CHECK:
MOV D,#11111111B
CLR RS
SETB RW
CLR E
NOP
SETB E
JB D7,WR_CHECK

RET

INITIALIZATION:
MOV TMOD,#20H
MOV TL1,#0E6H
MOV TH1,#0E6H
SETB TR1
MOV SCON,#01010000B
SETB RW
SETB RS


MAIN:
LCALL DELAY15
MOV A,#00111000B
LCALL WRITE_COM
NOP
NOP
NOP
NOP
NOP
LCALL WRITE_COM
NOP
NOP
NOP
NOP
NOP
LCALL WRITE_COM
LCALL WR_CHECK
LCALL WRITE_COM

MOV A,#00001000B;(关闭显示)
LCALL WR_CHECK
LCALL WRITE_COM

MOV A,#00000001B;(显示清屏)
LCALL WR_CHECK
LCALL WRITE_COM

MOV A,#00000110B;(显示光标移动设置)
LCALL WR_CHECK
LCALL WRITE_COM

MOV A,#00001111B;(显示开及光标设置)
LCALL WR_CHECK
LCALL WRITE_COM

MOV A,#01010100B
LCALL WR_CHECK
LCALL WRITE_DATA

MOV A,#01101110B
LCALL WR_CHECK
LCALL WRITE_DATA

MOV A,#01111000B
LCALL WR_CHECK
LCALL WRITE_DATA

MOV A,#01101110B
LCALL WR_CHECK
LCALL WRITE_DATA

MOV A,#080H
LCALL WR_CHECK
LCALL WRITE_COM

LCALL DELAY1S
MOV A,#01101110B
LCALL WR_CHECK
LCALL WRITE_DATA

LCALL SENDA

END

⌨️ 快捷键说明

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