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

📄 yslcd.asm

📁 详细的液晶资料
💻 ASM
字号:
;dot matrix character liquid crystal display moudule test program Ver 1.0
;special for HD44780,KS0066 driver,capable to 8x,16xx,20xx,40xxLCM.    
;YUSUNG Electronic Limited Corporation,kch  1997-12-03      
;该程序可测试各种字符点阵模块
	ORG     0000H
	AJMP    MAIN

	ORG     0300H    
	DB      58H,58H,58H,58H,58H,58H,58H,58H,  ;58H---display X
	DB      58H,58H,58H,58H,58H,58H,58H,58H,
	DB      58H,58H,58H,58H,58H,58H,58H,58H,
	DB      58H,58H,58H,58H,58H,58H,58H,58H,        
	DB      58H,58H,58H,58H,58H,58H,58H,58H,
	DB      58H,58H,58H,58H,58H,58H,58H,58H,
	DB      58H,58H,58H,58H,58H,58H,58H,58H,
	DB      58H,58H,58H,58H,58H,58H,58H,58H,
	DB      58H,58H,58H,58H,58H,58H,58H,58H,
	DB      58H,58H,58H,58H,58H,58H,58H,58H,

	ORG     0350H
	DB      2AH,59H,55H,53H,55H,4EH,47H,2AH,   ;2AH---* 
	DB      45H,4CH,45H,43H,2EH,4CH,54H,44H,    ;*YUSUNG*ELEC.LTD 
	DB      2AH,44H,4FH,54H,2AH,4DH,41H,54H,    ;*DOT*MATRIX*LCD*
	DB      52H,49H,58H,2AH,4CH,43H,44H,2AH,    
	DB      4BH,65H,5AH,6FH,6EH,48H,75H,69H,    ;KeZonHui   
	DB      2AH,59H,55H,53H,55H,4EH,47H,2AH,   ;2AH---* 
	DB      45H,4CH,45H,43H,2EH,4CH,54H,44H,    ;*YUSUNG*ELEC.LTD 
	DB      2AH,44H,4FH,54H,2AH,4DH,41H,54H,    ;*DOT*MATRIX*LCD*
	DB      52H,49H,58H,2AH,4CH,43H,44H,2AH,    
	DB      4BH,65H,5AH,6FH,6EH,48H,75H,69H,    ;KeZonHui   
	DB      2AH,2AH,2AH,2AH,2AH,2AH,2AH,2AH,
	DB      44H,4FH,54H,20H,4DH,41H,54H,52H,   ;2AH---* 
	DB      49H,58H,20H,4CH,49H,51H,55H,49H,
	DB      44H,20H,43H,52H,59H,53H,54H,41H,   ;DOT MATRIX LIQUID CRY
	DB      4CH,20H,44H,49H,53H,50H,4CH,41H,   ;STAL DISPLAY MOUDULE
	DB      59H,20H,4DH,4FH,55H,44H,4CH,45H,   ;*******************     
	DB      2AH,2AH,2AH,2AH,2AH,2AH,2AH,2AH,
	DB      2AH,2AH,2AH,2AH,2AH,2AH,2AH,2AH,
	DB      54H,4DH,0B0H,44H,4DH,43H,34H,30H,  ;TM-DCM402
	DB      32H,2AH,2AH,2AH,2AH,2AH,2AH,2AH,
	DB      2AH,2AH,2AH,2AH,2AH,2AH,2AH,2AH,
	DB      2AH,2AH,2AH,2AH,2AH,2AH,2AH,2AH,        

MAIN :  
	MOV    SP, #60H     ;Initial for the first display
	MOV    P1, #38H     ;set function               
	LCALL  WINST
	MOV    P1, #0EH     ;set display on/off control
	LCALL  WINST
	MOV    P1, #06H     ;set Entry mode                     
	LCALL  WINST
	MOV    P1, #01H     ;clear display,write code 20h into all DDRAM
	LCALL  WINST
	LCALL  DELAY1


	MOV    DPTR, #0300H
	MOV    R0, #28H      ;Set Pointer
	MOV    R2, #00H
	MOV    A, #00H
	MOV    P1, #80H      ;set DDRAM address 0000h
	LCALL  WINST
LOOP1:  MOVC   A, @A+DPTR
	MOV    P1, A
	LCALL  WDATA
	INC    R2
	MOV    A, R2
	DJNZ   R0, LOOP1

	MOV    DPTR, #0328H
	MOV    R0, #28H
	MOV    R2, #00H
	MOV    A, #00H
	MOV    P1, #0C0H
	LCALL  WINST
LOOP2:  MOVC   A, @A+DPTR
	MOV    P1, A
	LCALL  WDATA
	INC    R2
	MOV    A, R2
	DJNZ   R0, LOOP2   ;The first display is over
	LCALL  DELAY2       ;paused  about 5ms


	MOV    SP, #60H    ;initial for the second display
	MOV    P1, #38H
	LCALL  WINST
	MOV    P1, #0EH
	LCALL  WINST
	MOV    P1, #06H
	LCALL  WINST
	MOV    P1, #01H
	LCALL  WINST
	LCALL  DELAY1

	MOV    DPTR, #0350H   ;ready for the first line display
	MOV    R0, #28H
	MOV    R2, #00H
	MOV    A, #00H
	MOV    P1, #80H
	LCALL  WINST
LOOP3:  MOVC   A, @A+DPTR
	MOV    P1, A
	LCALL  WDATA
	INC    R2
	MOV    A, R2
	DJNZ   R0, LOOP3     ;THE first line display is over

	MOV    DPTR, #0378H  ;ready for the second line display
	MOV    R0, #28H
	MOV    R2, #00H
	MOV    A, #00H
	MOV    P1, #0C0H
	LCALL  WINST
LOOP4:  MOVC   A, @A+DPTR
	MOV    P1, A
	LCALL  WDATA
	INC    R2
	MOV    A, R2
	DJNZ   R0, LOOP4     ;main program is end upto here
LOOP5:  LCALL  DELAY2
	AJMP   MAIN
	
      
WINST:  CLR    P3.0          ;write to instruction register
	CLR    P3.2
	SETB   P3.1
	LCALL  DELAY1
	CLR    P3.1
	LCALL  DELAY1
	RET    
    
WDATA:  CLR    P3.2          ;write to data register
	SETB   P3.0
	SETB   P3.1
	LCALL  DELAY1
	CLR    P3.1
	LCALL  DELAY1
	RET    
       
DELAY1: MOV    50H, #08H     ;delay  1648 us
ADDR1:  PUSH   50H
ADDR2:  PUSH   50H
ADDR3:  PUSH   50H
ADDR4:  DJNZ   50H, ADDR4
	POP    50H
	DJNZ   50H, ADDR3
	POP    50H
	DJNZ   50H, ADDR2
	POP    50H
	DJNZ   50H, ADDR1
	RET    
       
DELAY2: MOV    R0, #0CCH
	MOV    R2, #66H
ADDR5:  LCALL  DELAY1         ;delay ccH X 1648us
	DJNZ   R0, ADDR5
ADDR6:  LCALL  DELAY1         ;delay 66H X 1648us   total 5.05ms
	DJNZ   R2, ADDR6
	RET    
     
	END                   ;P1 port connect to Driver's db0--db7 
			      ;RS to P3.0; R/W to P3.2;  E to P3.1
 

⌨️ 快捷键说明

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