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

📄 电子钟.asm

📁 此程序含有仿真电路图和C语言程序
💻 ASM
字号:
ORG	0000H
LJMP 	MAIN
ORG	0003H
LJMP	SECTION
ORG	000BH
LJMP	TIME
;************  MAIN PROGRAM  ***************
ORG	0100H
MAIN:  MOV     SP,#50H
        MOV     TCON,#01H  ;定义中断方式
	    MOV	  20H,#00H   ;BIN  SECOND
	    MOV	  21H,#00H   ;BIN  MINUTE
       	MOV	  22H,#00H   ;BIN  HOUR
        MOV     23H,#00H
        MOV     30H,#00H   ;BCD  SECOND
        MOV     31H,#00H   ;
        MOV     32H,#00H   ;BCD  MINUTE
        MOV     33H,#00H   ;
        MOV     34H,#00H   ;BCD  HOUR
        MOV     35H,#00H
      	MOV	TMOD,#01H   ;16位计数器
	    MOV	TH0,#03CH
	    MOV	TL0,#0B0H
	MOV	IE,#10000011B
	    SETB	TR0             ;T0启动计数
        MOV   R2,#14H
	    MOV	P2,#0FFH
ML1:	ACALL	DISP
        JB P1.0,ML1
        MOV C,P1.0           ;按键消振
        JC ML1
        LCALL DELAY
        MOV C,P1.0
        JC ML1
STOP1:  MOV C,P1.0
        JNC STOP1
        LCALL DELAY
        MOV C,P1.0
        JNC STOP1
        JB  23H.0,HOUR
MIN:    INC  21H
        MOV A,21H
        CJNE     A,#3CH,GO11
        MOV      21H,#0
        MOV      32H,#0
        MOV      33H,#0
        SJMP     ML1
GO11:   MOV B,#0AH
        DIV AB
        MOV 32H,B
        MOV 33H,A
        AJMP    ML1
HOUR:  INC  22H
        MOV  A,22H
        CJNE     A,#18H,GO22
        MOV      22H,#0
        MOV      34H,#0
        MOV      35H,#0
        SJMP     ML1
GO22:   MOV      B,#0AH
        DIV      AB
        MOV      34H,B
        MOV      35H,A
        AJMP     ML1
DELAY:MOV R4,#14H
DL00: MOV R5,#0FFH
DL11: DJNZ R5,DL11
      DJNZ R4,DL00
      RET
;***********  TIME  PROCESS  **************
TIME:   PUSH ACC
        PUSH PSW
        MOV	TH0,#03CH
 	MOV	TL0,#0B0H
	DJNZ	R2,RET0
	MOV	R2,#14H
	MOV	A,20H
	CLR C
	INC  A
	CJNE 	A,#3CH,GO1
	MOV	20H,#0
    MOV     30H,#0
    MOV     31H,#0
	MOV	A,21H
	INC	A
	CJNE	A,#3CH,GO2
    MOV  21H,#0H
    MOV  32H,#0
    MOV  33H,#0
	MOV	A,22H
	INC	A
	CJNE	A,#18H,GO3
	MOV   22H,#00H
    MOV   34H,#0
    MOV   35H,#0
	AJMP	RET0
GO1:	MOV	20H,A
        MOV     B,#0AH
        DIV     AB
        MOV     31H,A
        MOV     30H,B
	AJMP	RET0
GO2:	MOV	21H,A
        MOV     B,#0AH
        DIV     AB
        MOV     33H,A
        MOV     32H,B
	AJMP	RET0
GO3:	MOV	22H,A
        MOV     B,#0AH
        DIV     AB
        MOV     35H,A
        MOV     34H,B
       	AJMP	RET0
RET0:   POP PSW
        POP ACC
        RETI
;;;////*******--DISPLAY  PART---+++++
DISP:	MOV	R0,#30H
	MOV	R3,#0FEH
	MOV	A,R3
PLAY:  MOV   P2,A
       MOV   A,@R0
       MOV   DPTR,#DSEG1
       MOVC  A,@A+DPTR
       MOV   P0,A
       LCALL DL1
       MOV P2,#0FFH
       MOV   A,R3
       RL       A
       JNB    ACC.6,LD1
       INC      R0
       MOV   R3,A
       LJMP  PLAY
LD1:   RET
;;;;;;;;;;;;;;;DELAY
DL1:	MOV	R7,#05H
DL:	    MOV	R6,#0FFH
DL6:	DJNZ	R6,$
	    DJNZ	R7,DL
	    RET
DSEG1:DB 3FH,06H,5BH,4FH,66H
      DB 6DH,7DH,07H,7FH,6FH
;///////***//////*******/////////////
SECTION:PUSH    ACC
        PUSH    PSW
        MOV C,P3.2          ;按键消振
        JC PPP
        ACALL DELAY
        MOV C,P3.2
                       JC PPP
STOP0:  MOV C,P3.2
        JNC STOP0
        ACALL DELAY
        MOV C,P3.2
        JNC STOP0
        CPL 23H.0
PPP:    POP     PSW
        POP     ACC
        RETI
        END

⌨️ 快捷键说明

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