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

📄 1302yybsz.asm

📁 16个LED旋转时钟
💻 ASM
字号:
ORG 0000H
AJMP MA
ORG 0013H
AJMP DT
ORG 0030H			 
 
                      BTT DATA 50H
					  BYT DATA 51H
					  COM DATA 52H
					  RCV DATA 30H
					  XMT DATA 38H

 					  IO  BIT P1.5
					  DCLK BIT P1.6
					  RST BIT P1.4

					  K1 BIT P1.0             ;定义按键K1
                      K2 BIT P1.1             ;定义按键K2
					  K3 BIT P1.2
					  K4 BIT P1.3
				  ;/////////////////////////////////////////////////

                   MA:LCALL DYS
				      MOV P2,#0FFH
                      MOV P0,#0FFH
					  MOV P1,#0FFH        ;端口初始化
	  
	             	  CLR A
                      MOV R0,#20H
                   DD:MOV @R0,A
                      INC R0
                      CJNE R0,#5FH,DD

					  LCALL DYS
					   
					  MOV COM,#8Eh
                      MOV BYT,#1
                      MOV R0,#XMT
                      MOV XMT,#00h
                      LCALL XIE

					  LCALL DYS

					  SETB EA
                      SETB EX1
                      CLR IT1

			           CLR F0


    KDD:JB K3,KDDX
	LCALL YY
	JB K3,KDDX
	LCALL ZFJ
   KDDX:JB K2,KDDY
	LCALL YY
	JB K2,KDDY
	LCALL SJF
   KDDY:JB K1,KDD
	LCALL YY
	JB K1,KDD
	LCALL FJF
	AJMP KDD

    ZFJ:JNB K3,ZFJ
	     JNB F0,TTZ
        SETB EA
        SETB EX1
        CLR IT1         ;NO
		  MOV COM,#80h ;命令字节为BEh
        MOV BYT,#1 ;多字节写入模式此模块为8 个
	     MOV R0,#XMT; 数据地址覆给R0
  	     MOV XMT,#00H
	     LCALL XIE  ; 调用写入数据子程序

	CLR F0
   MOV P0,#0FFH
	MOV P2,#0FFH
	AJMP KDD

    TTZ:CLR EA
        CLR EX1
        SETB IT1    ;YES
        MOV COM,#80h ;命令字节为BEh
        MOV BYT,#1 ;多字节写入模式此模块为8 个
	     MOV R0,#XMT; 数据地址覆给R0
  	     MOV XMT,#80H
	     LCALL XIE  ; 调用写入数据子程序

	SETB F0
   MOV P0,31H
	MOV P2,32H
	AJMP KDD


    SJF:JNB K2,SJF
	    INC 31H
  	    MOV A,31H
	    CJNE A,#0AH,CX1
	    MOV 31H,#10H
	    LCALL XIE1
		AJMP ZUZ
    CX1:CJNE A,#1AH,CX2
	    MOV 31H,#20H
	    LCALL XIE1
		AJMP ZUZ
    CX2:CJNE A,#2AH,CX3
	    MOV 31H,#30H
	    LCALL XIE1
		AJMP ZUZ
    CX3:CJNE A,#3AH,CX4
	    MOV 31H,#40H
	    LCALL XIE1
		AJMP ZUZ
    CX4:CJNE A,#4AH,CX5
	    MOV 31H,#50H
	    LCALL XIE1
		AJMP ZUZ
    CX5:CJNE A,#5AH,CXZ
	    MOV 31H,#00H
    CXZ:LCALL XIE1
           
    ZUZ:LCALL XIANX
        RET



    FJF:JNB K1,FJF
	    INC 32H
	    MOV A,32H
  	    CJNE A,#0AH,FCX1
	    MOV 32H,#10H
	    LCALL XIE2
		AJMP ZUZ
   FCX1:CJNE A,#1AH,FCX2
	    MOV 32H,#20H
  	    LCALL XIE2
		AJMP ZUZ
   FCX2:CJNE A,#24H,FCX3
	    MOV 32H,#00H
   FCX3:LCALL XIE2

        AJMP ZUZ


				        

      XIE2:MOV COM,#84h ;命令字节为BEh
      MOV BYT,#1 ;多字节写入模式此模块为8 个
	  MOV R0,#XMT; 数据地址覆给R0
  	  MOV XMT,32H
	  LCALL XIE  ; 调用写入数据子程序
     RET

   XIE1:MOV COM,#82h ;命令字节为BEh
      MOV BYT,#1 ;多字节写入模式此模块为8 个
	   MOV R0,#XMT; 数据地址覆给R0
  	   MOV XMT,31H	  
	   LCALL XIE  ; 调用写入数据子程序
      RET

           SUAN:MOV A,34H
		CJNE A,#5,SS1
		MOV A,33H
		CJNE A,#49,RET_B	   ;在编码中31在16进制中10进制49
		SETB 20H.1             ;20H.1 SHENRI
 		RET
            SS1:CJNE A,#8,RET_B
		MOV A,33H
		CJNE A,#5,SS2
		SETB 20H.2             ;20H.2 ZHOUNINA
		RET
            SS2:CJNE A,#7,RET_B
		SETB 20H.3             ;20H.3 QIXI
          RET_B:RET





			  ;////////////////////////////////////////

		          	 
		       DT:LCALL SX
				    LCALL BM
					 LCALL SUAN
					 JB 20H.1,SHEN
				    JB 20H.2,ZHOU 
					 JB 20H.3,QIXI
					 LCALL MAIN 
					 MOV 3DH,#00H
					 MOV 3EH,#00H
					 MOV 3FH,#00H
					 RETI

				SHEN:JB 20H.4,V1
					 JB 20H.5,V22			     
		             LCALL SXXXX
					 CJNE A,#0EH,RET_A
					 SETB 20H.4
	 	          V1:LCALL DDF
		             INC 21H
		             MOV A,21H
			         CJNE A,#1BH,RET_A
					 SETB 20H.5
					 CLR 20H.4
			     V22:LCALL DDFF
				     INC 21H
					 MOV A,21H
					 CJNE A,#2AH,RET_A
			          MOV 21H,#00H
			          MOV 20H,#00H
   	            RET_A:RETI

				ZHOU:JB 20H.4,V2
		             LCALL SXXXX
					 CJNE A,#0EH,RET_A
					 SETB 20H.4
	 	          V2:MOV DPTR,#NIAN
					 LCALL XSDF
					 MOV DPTR,#WOKAO 
					 LCALL XSDF
					 MOV DPTR,#SAN
					 LCALL XSDF
					 MOV DPTR,#SHI
				    LCALL XSDF
					 MOV DPTR,#XIANG
	     			 LCALL XSDF
		             INC 21H
		             MOV A,21H
			         CJNE A,#1CH,RET_V
			         MOV 21H,#00H
			         MOV 20H,#00H
   	           RET_V:RETI

			         
				QIXI:JB 20H.4,V3
		             LCALL SXXXX
					 CJNE A,#0EH,RET_A
					 SETB 20H.4
	 	          V3:MOV DPTR,#LEE
					 LCALL XSDF
					 MOV DPTR,#KUAI
					 LCALL XSDF
					 MOV DPTR,#XI
					 LCALL XSDF
					 MOV DPTR,#QI
					 LCALL XSDF
		             INC 21H
		             MOV A,21H
			          CJNE A,#1CH,RET_C
			          MOV 21H,#00H
			          MOV 20H,#00H
   	           RET_C:RETI

			   SXXXX:LCALL SX              
					 LCALL BM
					 LCALL MAIN
		             INC 21H 
		             MOV A,21H
					 RET

			                        


					 
			 ;/////////////////////////////////
	
	DDF:MOV R2,#00H
        MOV R3,#00H

  WGQ_A:MOV A,R2
        MOV DPTR,#HB
        MOVC A,@A+DPTR
        MOV 22H,A     
        INC R2

  WGQ_B:MOV A,R3
        MOV DPTR,#HB1
        MOVC A,@A+DPTR
        MOV 24H,A
        INC R3

        LCALL XIAN
        CJNE R3,#56,WGQ_A
		RET			 


				  	
   DDFF:MOV R2,#00H
        MOV R3,#00H

  WGQ_A1:MOV A,R2
        MOV DPTR,#TA
        MOVC A,@A+DPTR
        MOV 22H,A     
        INC R2

        MOV A,R3
        MOV DPTR,#TA1
        MOVC A,@A+DPTR
        MOV 24H,A
        INC R3

        LCALL XIAN
        CJNE R3,#56,WGQ_A1
		RET	


				MAIN:MOV R0,#40H
					 MOV R1,#46H

					 MOV R7,#06H

				  WA:MOV 3FH,@R0
				     MOV 3EH,@R1
					 
					 LCALL SZ
					 INC R0
					 INC R1	
					 
					 INC 23H
					 MOV A,23H
					 CJNE A,#02H,WO
					 LCALL MAOH
				  WO:CJNE A,#04H,WOR
					 LCALL MAOH

				 WOR:DJNZ R7,WA
					 MOV 23H,#00H
					 RET


				  SZ:MOV A,3FH
				     MOV DPTR,#CB
					 MOVC A,@A+DPTR
					 MOV R3,A
					 
					 MOV A,3EH
					 MOV DPTR,#CB
					 MOVC A,@A+DPTR
					 MOV R2,A

					 MOV R4,#05H
				     
				 ETA:MOV A,R3
					 MOV DPTR,#SZQ
					 MOVC A,@A+DPTR
					 MOV 22H,A
					 INC   R3

					 MOV A,R2
					 MOV DPTR,#SZQ
					 MOVC A,@A+DPTR
					 MOV 24H,A
					 INC   R2

					 LCALL XIAN
					 DJNZ R4,ETA
					 LCALL K
			

					 RET

				  
					       	  BM:MOV R0,#40H
					             MOV R1,#41H

							     MOV 3DH,30H
								 MOV A,30H
								 LCALL BXB
							
								 MOV 3DH,31H
								 MOV A,31H
								 LCALL BXB
							
								 MOV 3DH,32H
								 MOV A,32H
								 LCALL BXB

								 MOV 3DH,33H
								 MOV A,33H
								 LCALL BXB

								 MOV 3DH,34H
								 MOV A,34H
								 LCALL BXB

								 MOV 35H,36H

								 MOV 3DH,35H
								 MOV A,35H
								 LCALL BXB

								 RET
				BXB:MOV B,#16
					DIV AB
				    MOV @R1,A
				    MOV @R0,B
					LCALL LF1
					RET
							 
					
		       XIANX:MOV P0,31H
					 MOV P2,32H
					 RET
                     			
				XIAN:MOV P0,24H
				     MOV P2,22H
					 LCALL YS
					 RET

				   K:MOV P0,#0FFH
				     MOV P2,#0FFH
					 LCALL YS
					 RET

				  YS:MOV R6,#10H
				  NX:MOV R5,#18H
					 DJNZ R5,$
					 DJNZ R6,NX
					 RET
				  


				 DYS:MOV R6,#0FFH
				 NX1:MOV R5,#0FFH
					 DJNZ R5,$
					 DJNZ R6,NX1
					 RET

				  YY:MOV R6,#0E0H
				 NX2:MOV R5,#18H
					 DJNZ R5,$
					 DJNZ R6,NX2
					 RET
							
                 SX:MOV COM,#0BFh ;命令字节为BFh
                    MOV BYT,#8 ;多字节读出模式此模块为8 个
                    MOV R1,#RCV ;数据地址覆给R1
                    ACALL DU; 调用读出数据子程序
                    RET         

				 
						   MAOH:MOV P0,#0FFH
								MOV P2,#0FFH
								LCALL YS
								MOV P0,#0FBH
								MOV P2,#0BDH
								LCALL YS
								MOV P0,#0FFH
								MOV P2,#0FFH
								LCALL YS
								MOV P0,#0FFH
								MOV P2,#0FFH
								LCALL YS
									
								RET



				  XIE:LCALL WSK
				   S1:MOV A,@R0
				      MOV BTT,#08H
				   S2:RRC  A
				      MOV IO,C
				      NOP
				      SETB DCLK
				      NOP
					  CLR DCLK
					  DJNZ BTT,S2
					  INC R0
					  DJNZ BYT,S1
					  NOP
					  CLR RST
					  RET



				   DU:LCALL WSK
				   D1:CLR A
				      CLR C
					  MOV BTT,#08H
				   D2:CLR DCLK
				      NOP
					  MOV C,IO
					  RRC A
					  SETB DCLK
					  NOP
					  CLR DCLK
					  DJNZ BTT,D2
					  MOV @R1,A
					  INC R1
					  DJNZ BYT,D1
					  NOP
					  CLR RST
					  RET

				  WSK:CLR RST 
				      NOP
					  CLR DCLK
					  NOP
					  SETB RST
					  NOP
					  MOV A,COM
					  MOV BTT,#08H
				   SO:RRC A
				      MOV IO,C
					  NOP
					  SETB DCLK
					  NOP
					  CLR DCLK
					  NOP
					  DJNZ BTT,SO
					  NOP
					  RET
					  					 			 
				 LF1:INC R0
					 INC R0
					 INC R1
					 INC R1
					 RET
					 
   XSDF:MOV 28H,#00H
        MOV 29H,#01H
    	MOV R7,#16
     QS:MOV A,28H
        MOVC A,@A+DPTR
        MOV 22H,A
    	MOV A,29H
        MOVC A,@A+DPTR
        MOV 24H,A
        INC 28H    
    	INC 28H 
    	INC 29H 
	    INC 29H
     	LCALL XIAN
        DJNZ R7,QS 
        RET    	 	  		  		  
				      ;HAPPY BIRTHDAY
					HB:DB 0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH
					   DB 0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH
					   DB 0FFH,3FH,0DFH,0E1H,0DFH,3FH,0FFH        ; Y
					   DB 0FFH,9FH,6FH,6FH,6FH,01H,0FFH			  ;P
					   DB 0FFH,9FH,6FH,6FH,6FH,01H,0FFH			;  P
					   DB 0FFH,0E1H,97H,77H,97H,0E1H,0FFH 			 ;  A
					   DB 0FFH,01H,0EFH,0EFH,0EFH,01H,0FFH		;  H
					   DB 0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH
					   DB 0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH
				   HB1:DB 0FFH,3FH,0DFH,0E1H,0DFH,3FH,0FFH 		 ;  Y
					   DB 0FFH,0E1H,97H,77H,97H,0E1H,0FFH 			 ;  A
					   DB 0FFH,83H,7DH,7DH,7DH,01H,0FFH 			 ;  D
					   DB 0FFH,01H,0EFH,0EFH,0EFH,01H,0FFH 		 ;  H
					   DB 0FFH,7FH,7FH,01H,7FH,7FH,0FFH 			 ;  T
					   DB 0FFH,9DH,6BH,67H,6FH,01H,0FFH 			 ;  R
					   DB 0FFH,0FFH,7DH,01H,7DH,0FFH,0FFH 			 ;  I
					   DB 0FFH,93H,6DH,6DH,6DH,01H,0FFH 			 ;  B
       						   ;TO Aurora
					TA:DB 0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH
					   DB 0FFH,0FFH,0FFH,0FFH,0FFH,0FFH
					   DB 0FFH,0FFH,0FFH,0FFH,0FFH,0FFH
					   DB 0FFH,0FFH,0FFH,0FFH,0FFH,0FFH
					   DB 83H,7DH,7DH,7DH,83H,0FFH,0FFH			 ;  o
					   DB 7FH,7FH,01H,7FH,7FH,0FFH,0FFH			 ;  T
					   DB 0FFH,0FFH,0FFH,0FFH,0FFH,0FFH
					   DB 0FFH,0FFH,0FFH,0FFH,0FFH
					   DB 0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH
					   DB 0FFH,0FFH,0FFH,0FFH,0FFH
				   TA1:DB 0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH
					   DB 0FFH,0FFH,0FFH,0FFH,0FFH
					   DB 0FEH,0F1H,0EDH,0EEH,0F1H,0FFH           ;a	 
					   DB 0EFH,0F7H,0F8H,0F7H,0F3H,0FFH			 ;R
					   DB 0F1H,0EEH,0EEH,0EEH,0F1H,0FFH			  ;O
					   DB 0EFH,0F7H,0F8H,0F7H,0F3H,0FFH			 ;R
					   DB 0FEH,0E1H,0FEH,0FEH,0E1H,0FFH			;U
					   DB 0F0H,0CBH,0CBH,0CBH,0F0H,0FFH		   ;A
					   DB 0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH
					   DB 0FFH,0FFH,0FFH,0FFH,0FFH	 	
				SZQ:DB 83H,7DH,7DH,7DH,83H,0FFH,0FDH,01H,0BDH,0FFH,9DH,6DH,6DH,75H,79H,93H,6DH,6DH,6DH,6DH,0F7H,01H,0B7H,0D7H,0E7H,73H,6DH,6DH,6DH,1DH,73H,6DH,6DH,6DH,83H,3FH,41H,7FH,7FH,7FH,93H,6DH,6DH,6DH,93H,83H,6DH,6DH,6DH,9DH  
				 CB:DB 00H,05H,0AH,0FH,14H,19H,1EH,23H,28H,2DH

				 	
QI:
DB 0FFH,0FFH,0FBH,0FFH,0FBH,0E3H,0FBH,0FDH,0FBH,0FDH,0FBH,0FDH,0FBH,0FDH,0FBH,0FDH
DB 80H,03H,0FDH,0FFH,0FDH,0FFH,0FDH,0FFH,0FDH,0FFH,0FDH,0FFH,0FDH,0FFH,0FFH,0FFH
XI:
DB 0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0C7H,0FFH,0D9H,0FFH,0DEH,0FFH,0DFH,7FH,0DFH,0BFH,5FH
DB 0EFH,0DEH,0F7H,01DH,0FBH,0E3H,0FBH,0FBH,0FDH,0FDH,0FDH,0FEH,0FDH,0FFH,0FFH,0FFH
KUAI:
DB 0FFH,0FFH,0FFH,0FDH,0FEH,0FCH,0E0H,0F9H,0EEH,0F3H,0EEH,0EFH,0EEH,09FH,00H,07FH
DB 0EEH,8FH,0EEH,0F3H,0EEH,0FDH,0F2H,0FEH,0EFH,0FFH,00H,00H,0FFH,0FFH,0F1H,0FFH
LEE:
DB 0FFH,0FFH,0FFH,0FFH,0FDH,0E3H,0BDH,0CFH,3DH,0BFH,3DH,0FFH,0BDH,0FFH,0A0H,03H
DB 9DH,0FDH,0DDH,0FBH,0DDH,0B7H,0DDH,1FH,0C0H,0CFH,0FDH,0E7H,0FFH,0FBH,0FFH,0FFH
XIANG:
DB 0FFH,0FFH,0FFH,0FFH,80H,00H,0BBH,0BDH,0BBH,0BDH,0BBH,0BDH,0BBH,0BDH,80H,00H
DB 0FFH,0FFH,0F6H,7FH,0F5H,0FFH,0F3H,0FFH,00H,00H,0F4H,0FFH,0F7H,03FH,0F7H,0DFH
SHI:
DB 0FFH,0FFH,0FFH,0FBH,0FFH,0F1H,80H,0CFH,0BEH,0BFH,0BEH,0FFH,0BEH,0FFH,0BEH,8FH
DB 80H,0F3H,0FFH,0FDH,0FFH,0F6H,0FFH,0FBH,0DCH,01H,8DH,0FFH,7DH,0FFH,0FDH,0FFH	
SAN:
DB 0FFH,0FFH,0FFH,0FBH,0DFH,0FBH,0DEH,0FBH,0DEH,0FBH,0DEH,0FBH,0DEH,0FBH,0DEH,0FBH
DB 0DEH,0FBH,0DEH,0FBH,0DEH,0FBH,0DEH,0FBH,0DEH,0FBH,0DEH,0FBH,0DFH,0FBH,0FFH,0FFH
WOKAO:
DB 0FFH,0FFH,0FFH,0FFH,80H,01H,0BFH,0FEH,0BDH,0FDH,0ADH,07H,0ADH,6FH,81H,6FH
DB 0ADH,6FH,0ADH,07H,0BDH,0FFH,0BFH,0FFH,80H,0FH,0FFH,0F3H,0FFH,0FDH,0FFH,0FEH
NIAN:  
DB 0FFH,0FFH,0FFH,0DFH,0BFH,0DFH,0BBH,0DFH,0BBH,0DFH,0BBH,0DFH,0BFH,0DFH,80H,00H
DB 0BBH,0DFH,0BBH,0DFH,0BFH,0DFH,38H,1FH,0CFH,0DFH,0F7H,0DFH,0FBH,0DFH,0FDH,0DFH	;cuowu



				 END

   

					   

⌨️ 快捷键说明

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