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

📄 myproj.asm

📁 暑假为学生培训写的51相关接口的所有源码及项目代码
💻 ASM
字号:
	org 0000h
	LJMP Main
RS   EQU  P2.0
RW   EQU  P2.1
E    EQU  P2.2
	org 0100H
Main:
	Call InitLCD
	mov DPTR,#DATE
	mov R0,#03h
	mov R2,#0AH
	Call WriteStrC
	mov DPTR,#CUSER
	mov R0,#044h
	mov R2,#06H
	Call WriteStrC
	jmp $ 
;初始化LCD
InitLCD:
	MOV A,#038H         
        LCALL EnterI
        LCALL LcdBUSY    ;判忙
        MOV A,#038H   ;设置为8总线16*2 5*8点阵      
        LCALL EnterI
        MOV A,#01H    ;清屏
        LCALL EnterI
        MOV A,#06H    ;设读写字符时地址加1,且整屏显示不移动
        LCALL EnterI
        MOV A,#0FH    ;开显示,开光标显示,光标和光标所在的字符闪烁
        LCALL EnterI
        LCALL WRCGRAM
        LCALL Delay
	ret
;LCD判忙操作
LcdBUSY:
        PUSH  ACC
        CLR RS
        SETB RW
TT0:    
        SETB E
        MOV A,P1
        CLR E
        ANL A,#80H
        JNZ TT0
        POP   ACC
        RET
;显示表结构数据 R0位置 DPTR字符首址 R2个数
WriteStrC:
        mov R4,#00h
Write:
        mov A,R4
	movc A,@A+DPTR
	mov R3,A
	Call WriteByte
	inc R0
	inc R4
	DJNZ R2,Write
	ret
;显示内存中数据R0位置 R1源地址 R2个数
WriteStrD:
        mov A,@R1
        mov R3,A
	Call WriteByte
	inc R0
	inc R1
	DJNZ R2,WriteStrD
	ret
;R0位置 R3字符
WriteByte: ;送单个字符
        mov A,R0
        add A,#80H
        Call EnterI      
	mov A,R3
	Call EnterD
	ret 

EnterI: ;送命令
        Clr RS
        CLR RW
        SETB E
        MOV P1,A
        CLR E
        Call Delay
	RET
EnterD: ;送数据
	SETB RS
        CLR RW
        SETB E
        MOV P1,A
        CLR E
        Call Delay
	RET
;字入自定义字模程序	
WRCGRAM:
	MOV	A,#40H		;从00H开始存放
	ACALL	EnterI
	MOV	R0,#030H	;年 月 日
	MOV	DPTR,#TBZI   
CGRAM1:	
        CLR     A
	MOVC	A,@A+DPTR
	ACALL	EnterD
        INC     DPTR	
	DJNZ	R0,CGRAM1
        RET	
        
Delay: ;延时子程序
	mov r7,#2H
	d1:mov r6,#255 
	d2:djnz r6,d2
	djnz r7,d1
	ret

FORYOUP: DB 46H,6FH,72H,79H,6FH,75H,70H
WELCOME: DB 57H,65H,6CH,63H,6FH,6DH,65H
DATE:    DB 32H,30H,30H,38H,2Dh,30H,37H,2DH,32H,39H
TIME:    DB 31H,31H,3AH,31H,31H,3AH,33H,36H
CNAME:   DB 'ABC'
CUSER:   DB 00H,01H,02H,03H,04H,05H
;****************************************************************
;字模数据定义代码
;****************************************************************
;为自编写字模用WRCGRAM子程序写入1602LCD夜晶显示器CGRAM存储器
;****************************************************************
TBZI:	DB 08H,0FH,12H,0FH,0AH,1FH,02H,02H  ;年
	DB 0FH,09H,0FH,09H,0FH,09H,11H,00H  ;月
	DB 0FH,09H,09H,0FH,09H,09H,0FH,00H  ;日
	db 00h,17h,0ch,14h,0ch,0ch,17h,00h  ;汇
	db 04h,1fh,08h,0fh,0eh,0dh,00h,00h  ;友
	db 00h,1fh,04h,0fh,05h,05h,1fh,00h  ;五          
END

⌨️ 快捷键说明

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