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

📄 4位8段数显十进制加计数器.asm

📁 4位八段数码管的十进制加计数仿真实验(含电路图和仿真文件)
💻 ASM
字号:
ORG 0000H
	   LJMP STAR0		   ;转程序 SRAR0
ORG 0200H				   ;程序地址 0200H
STAR0: CLR 00              ;位 00 清 0
       MOV P1,#0FFH        ;#0FFH-->P1
	   MOV P2,#0FH         ;#0FH-->P2
       MOV P0,#0FFH        ;#0FFH-->P0
       MOV 30H,#00H		   ;#00H-->30H
 	   MOV 31H,#00H		   ;#00H-->30H
	   MOV 32H,#00H		   ;#00H-->30H
	   MOV 33H,#00H		   ;#00H-->30H
	   LJMP STAR3		   ;转程序 SRAR3
STAR2: MOV A,#0AH		   ;#0AH-->A
	   INC 30H			   ;30H+1
	   CJNE A,30H,STJE	   ;30H 与 A 比较,不等转移 STJE
	   MOV 30H,#00H		   ;#00H-->30H
	   INC 31H			   ;31H+1
	   CJNE A,31H,STJE	   ;31H 与 A 比较,不等转移 STJE
	   MOV 31H,#00H		   ;#00H-->31H
	   INC 32H			   ;32H+1
	   CJNE A,32H,STJE	   ;32H 与 A 比较,不等转移 STJE
	   MOV 32H,#00H		   ;#00H-->32H
	   INC 33H			   ;33H+1
	   CJNE A,33H,STJE	   ;33H 与 A 比较,不等转移 STJE
	   MOV 33H,#00H		   ;#00H-->33H
	   MOV 32H,#00H 	   ;#00H-->32H
	   MOV 31H,#00H		   ;#00H-->31H
	   MOV 30H,#00H		   ;#00H-->30H
STJE:  RET				   ;子程序调用返回
STAR3: MOV R0,#30H		   ;#30H-->R0
	   MOV R6,#0F7H		   ;#0F7H-->R6
SMG0:  MOV P1,#0FFH	  	   ;#0FFH-->P1
	   MOV A,R6			   ;R6-->A
	   MOV P1,A			   ;A-->P1
	   RR A				   ;A向右移一位
	   MOV R6,A			   ;A-->R6
	   MOV A,@R0		   ;@R0-->A
	   ADD A,#04H		   ;#04H-->A
	   MOVC A,@A+PC		   ;A+PC-->
	   MOV P0,A		       ;A-->P0
	   AJMP SMG1		   ;转程序 SMG1
SDATA: DB 0C0H,0F9H,0A4H,0B0H,99H
	   DB 92H,82H,0F8H,80H,90H 
SMG1:  LCALL STAR4		   ;转子程序 SRAR4
	   LCALL STS00		   ;转子程序 STS00
	   INC R0			   ;R0+1
	   CJNE R6,#07FH,SMG0  ;#07FH 与 R6 比较,不等转移 SMG0
	   AJMP STAR3		   ;转程序 SRAR3
STAR4: JNB P2.0,ST1        ;P2.0=0 转 ST1
       CLR 00			   ;位 00 清 0
	   SJMP ST3            ;转ST3
ST1:   JNB 00,ST2          ;位 00=0 转 ST2
       SJMP ST3            ;转 ST3
ST2:   LCALL STAR2	  	   ;调子程序 STAR2
	   SETB 00             ;位 00 置 1
ST3:   RET		    	   ;子程序调用返回
ORG 0100H				   ;地址 0100H
STS00: MOV 60H,#003H	   ;#003H-->60H  (211)
DE001: MOV 61H,#0FFH	   ;#0FFH-->61H (255)
DE002: DJNZ 61H,DE002	   ;61H 减 1 不等于 0 转 DE002
	   DJNZ 60H,DE001	   ;60H 减 1 不等于 0 转 DE001
	   RET				   ;子程序调用返回
	   END				   ;结束

⌨️ 快捷键说明

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