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

📄 yd.asm

📁 最简单的16x16的显示屏,有原理图和实际硬件调试后通过的全部代码!一起交流,共同进步!
💻 ASM
📖 第 1 页 / 共 2 页
字号:
         SCLK_595   EQU  P1.2   ;时钟
         SDATA_595  EQU  P1.1   ;数据
		 RCK_595    EQU  P1.0   ;锁存
		 H1         BIT   00H
				ORG 00H
				LJMP  START
				ORG  000BH
				LJMP  DST050MS
				ORG  0030H
START:			MOV  DPTR,#TTAB
                mov 78h,dpl
                mov 79h,dph
                MOV  DPTR,#TAB
                mov 7ah,dpl
                mov 7bh,dph
                MOV  P0,#0FFH
                MOV  P2,#0FFH 
				MOV  R0,#0	
	 	        MOV  R1,#0	   	;表变址
				MOV  R2,#8		;数据移位控制变量
				MOV  R3,#0	    ;行控制数
				MOV  R4,#0	    ;DST050MS 次数变量
			    MOV  R5,#150	    ;一个字显示次数
				MOV  R6,#0  	;字数
			    MOV  R7,#0
				SETB  H1
				MOV TMOD,#01H
                MOV TH0,#4ch	 //50MS
                MOV TL0,#00h
                SETB EA
                SETB ET0
                SETB TR0
 WRITE:	        mov dpl,7ah		  //数据表
                mov dph,7bh
				LCALL  WRITE1
				mov dpl,78h		  //行表
                mov dph,79h 
				LCALL  OUT_8550	   //行输出
				MOV   P0,#0FFH
				MOV   P2,#0FFH
				INC   R1
				CJNE  R1,#32,WRITE  //一屏字幕显示完
				MOV   R1,#0
				DJNZ  R5,WRITE
				MOV   R5,#150

				LJMP   WRITE
//===========中断修改数据表头======================================
DST050MS:       
                CLR TR0
                PUSH ACC
                push PSW
                MOV TH0,#4ch   //50MS
                MOV TL0,#00h
                INC R4
                CJNE R4,#5,LP
                MOV r4,#0
                mov 40h,#2	   //控制移动字节数量 2:为一行一行移动  32: 为整屏移动
				MOV  DPL,7AH
				MOV  DPH,7BH	     
           ss:  inc dptr
                djnz 40h,ss
                mov 7ah,dpl
                mov 7bh,dph
				MOV  DPTR,#TTAB
                mov 78h,dpl
                mov 79h,dph
				INC  R6
				CJNE R6,#128,LP	   //控制移动的字数
				MOV  R6,#0
				MOV  DPTR,#TAB
                mov 7ah,dpl
                mov 7bh,dph
            LP: 
			    POP PSW
                POP ACC
                SETB  TR0
                RETI
//================================================================
 WRITE1:        MOV  A,R1
				MOVC A,@A+DPTR
				MOV  2AH,A		  //2AH送数据
				LCALL  WR_595	  //送一位数据
				INC   R1
				MOV   A,R1
				MOVC  A,@A+DPTR
				MOV  2AH,A
				LCALL WR_595
				LCALL  OUT_595	   //输出锁存
				RET	           
;---------------------------------------------------------------
;行输出子程序
;---------------------------------------------------------------
OUT_8550:	  
			  JB  H1,P0KSC
P2KSC: 		  MOV  A,R3  
P2KSC1: 	  MOVC A,@A+DPTR
              MOV  P2,A
			  LCALL  DELAY
			  INC  R3
              CJNE R3,#8,LOOP
			  MOV  R3,#0
			  SETB  H1		
			  RET
P0KSC:		  MOV  A,R3  
P0KSC1:		  MOVC A,@A+DPTR
              MOV P0,A
			  LCALL  DELAY
			  INC  R3
			  CJNE  R3,#8,LOOP
			  MOV  R3,#0
			  CLR  H1  
 LOOP:        RET	   

;---------------------------------------------------------------
;输出锁存器输出数据子程序
;---------------------------------------------------------------
OUT_595:
                CLR  RCK_595
                NOP
                SETB RCK_595      ;上升沿将数据送到输出锁存器
                NOP
                CLR  RCK_595
                RET
;--------------------------------------------------------------
;移位寄存器接收数据子程序
;--------------------------------------------------------------
WR_595:
                MOV R2,#08H
                MOV A,2AH
				cpl  a
WR_LOOP:		
                RLC A
                MOV SDATA_595,C
                SETB SCLK_595       ;上升沿发生移位
				NOP
                CLR SCLK_595
				NOP
                DJNZ R2,WR_LOOP
				MOV  R2,#8
                RET
;--------------------------------------------------------------
;延时子程序
;--------------------------------------------------------------
DELAY:
                MOV 43H,#14H           ; every LED(2ms)
   DL2:         MOV 44H,#14H
   DL1:
                DJNZ 44H,DL1
                DJNZ 43H,DL2
                RET
TTAB:   DB  0FEH,0FDH,0FBH,0F7H,0EFH,0DFH,0BFH,07FH
TAB:
;欢   CBBB6
DB 000H,003H,000H,003H,000H,003H,080H,001H
DB 0B8H,03FH,0BEH,01BH,0F0H,00CH,036H,003H
DB 03CH,003H,018H,003H,0BCH,007H,086H,00DH
DB 0C3H,038H,060H,0F0H,000H,000H,000H,000H

;迎   CD3AD
DB 000H,000H,000H,003H,08CH,003H,0F8H,03CH
DB 060H,036H,060H,036H,07FH,036H,0F8H,03FH
DB 0ECH,006H,018H,006H,018H,006H,0FFH,001H
DB 000H,0FFH,000H,038H,000H,000H,000H,000H
/*
;光   CB9E2
DB 080H,000H,084H,010H,088H,030H,090H,008H
DB 090H,004H,080H,020H,0FFH,07FH,020H,002H
DB 020H,002H,020H,002H,020H,002H,010H,002H
DB 010H,042H,008H,042H,004H,07CH,002H,000H

;临   CC1D9
DB 008H,001H,008H,001H,08AH,020H,08AH,07FH
DB 04AH,000H,02AH,001H,01AH,006H,00AH,024H
DB 0EAH,07FH,02AH,022H,02AH,022H,02AH,022H
DB 02AH,022H,028H,022H,0E8H,03FH,028H,020H */

;!    C2120
DB 000H,000H,000H,000H,080H,001H,0C0H,003H
DB 0C0H,003H,0C0H,003H,080H,001H,080H,001H
DB 080H,001H,000H,000H,080H,001H,080H,001H
DB 000H,000H,000H,000H,000H,000H,000H,000H

;您   CC4FA
DB 000H,000H,000H,000H,080H,001H,0C0H,003H
DB 0E0H,007H,0F0H,00FH,0C0H,003H,0C0H,003H
DB 0C0H,003H,0C0H,003H,0C0H,003H,0C0H,003H
DB 0C0H,003H,0C0H,003H,000H,000H,000H,000H

;好   CBAC3
DB 000H,000H,000H,000H,080H,001H,0C0H,003H
DB 0E0H,007H,0F0H,00FH,0C0H,003H,0C0H,003H
DB 0C0H,003H,0C0H,003H,0C0H,003H,0C0H,003H
DB 0C0H,003H,0C0H,003H,000H,000H,000H,000H

;停   CCDA3
DB 000H,006H,030H,03CH,0F0H,007H,018H,01FH
DB 098H,019H,09CH,00FH,01EH,07EH,0FBH,063H
DB 078H,03EH,0F8H,007H,018H,006H,018H,006H
DB 018H,006H,018H,007H,000H,006H,000H,000H

;23   C3233
DB 000H,000H,000H,000H,03EH,03EH,063H,063H
DB 060H,060H,030H,060H,018H,03CH,00CH,060H
DB 006H,060H,003H,060H,063H,063H,07FH,03EH
DB 000H,000H,000H,000H,000H,000H,000H,000H

;楼   CC2A5
DB 008H,002H,048H,012H,088H,00AH,008H,022H
DB 0FFH,07FH,088H,00AH,05CH,032H,02CH,022H
DB 00AH,001H,0FAH,07FH,089H,010H,048H,010H
DB 088H,00DH,008H,002H,088H,00DH,068H,010H

;  黑屏
DB 000H,000H,000H,000H,000H,000H,000H,000H
DB 000H,000H,000H,000H,000H,000H,000H,000H
DB 000H,000H,000H,000H,000H,000H,000H,000H
DB 000H,000H,000H,000H,000H,000H,000H,000H










/*;大   CB4F3
DB 0C0H,000H,0C0H,000H,0C0H,000H,0C0H,000H,0C0H,000H,0C0H,01FH,0FCH,000H,0C0H,000H
DB 0E0H,001H,060H,003H,030H,006H,018H,00CH,00CH,038H,006H,0F0H,000H,000H,000H,000H

;家   CBCD2
DB 0C0H,000H,080H,001H,08CH,03FH,0FCH,018H,08EH,003H,0F0H,000H,060H,00CH,0F8H,006H
DB 0E0H,003H,0F8H,007H,0E0H,01DH,0B0H,079H,09CH,001H,0E0H,001H,0C0H,000H,000H,000H

;好   CBAC3
DB 000H,000H,018H,000H,018H,03EH,098H,01BH,018H,00CH,078H,006H,0F8H,0FCH,0EFH,00FH
DB 078H,00CH,030H,00CH,078H,00CH,0CCH,00CH,006H,00EH,000H,00CH,000H,000H,000H,000H *

;大   CB4F3
DB 080H,001H,080H,001H,080H,001H,080H,001H
DB 080H,001H,0FFH,0FFH,080H,001H,0C0H,003H
DB 0C0H,003H,0C0H,006H,060H,006H,060H,00CH
DB 030H,018H,018H,038H,00CH,0F0H,006H,060H

;家   CBCD2
DB 0C0H,000H,080H,001H,0FCH,0FFH,006H,060H
DB 0FEH,03FH,080H,001H,0C0H,000H,0F0H,00DH
DB 0DEH,01FH,060H,007H,0B8H,007H,0EEH,01FH
DB 038H,0F3H,00EH,063H,0E0H,001H,0C0H,000H

⌨️ 快捷键说明

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