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

📄 ch7-2.asm

📁 計時器模式1模擬秒變化 7段顥示器 8051程式
💻 ASM
字号:
Value	EQU	40H
ScanLine EQU	41H
Sec	EQU	42H
        ORG     00H
        AJMP    START
        ORG     0BH
        AJMP    TIMER0
	ORG	1BH
	AJMP	TIMER1
START:  MOV     SP,#60H
        MOV     DPTR,#TABLE
        MOV     R0,#30H         	;bcd
	MOV	30H,#0			;initial value
	MOV	31H,#0
        MOV     Value,#0           	;count value
	MOV     ScanLine,#11111101B    	;scan singal
	MOV	Sec,#200
        SETB    EA
        SETB    ET0
	SETB	ET1
        MOV     TMOD,#11H      		;mode1
        MOV     TH0,#0ECH		;5000's
        MOV     TL0,#78H
	MOV	TH1,#0ECH		;5000's
	MOV	TL1,#78H
        SETB    TR0
	SETB	TR1
LOOP:   SJMP    LOOP
TIMER0: PUSH    ACC			;scan
        CLR     TR0
        MOV     TH0,#0ECH
        MOV     TL0,#78H
        MOV     A,@R0
        MOVC    A,@A+DPTR
        MOV     P1,A
	INC	R0
        MOV     A,ScanLine
	MOV     P2,A
	RR	A
	MOV	ScanLine,A
        CJNE    A,#01111111B,EXIT0
        MOV     R0,#30H
        MOV     ScanLine,#11111101B
EXIT0:  SETB    TR0
        POP     ACC
        RETI
TIMER1: PUSH    ACC			;delay 1 second;
        CLR     TR1
        MOV     TH1,#0ECH
        MOV     TL1,#78H
	DJNZ	Sec,EXIT1
	MOV	Sec,#200
	MOV     A,Value
        ADD     A,#1
        DA      A
        MOV     Value,A
	ACALL	CONV
EXIT1:	SETB    TR1
        POP     ACC
        RETI
CONV:	MOV     R1,#30H
        MOV     A,Value
        ANL     A,#0F0H
        SWAP    A
        MOV     @R1,A
        INC     R1
        MOV     A,Value
        ANL     A,#0FH
        MOV     @R1,A
        RET
TABLE:  DB      11000000B    ;0
        DB      11111001B    ;1
        DB      10100100B    ;2
        DB      10110000B    ;3
        DB      10011001B    ;4
        DB      10010010B    ;5
        DB      10000010B    ;6
        DB      11111000B    ;7
        DB      10000000B    ;8
        DB      10010000B    ;9
        END

⌨️ 快捷键说明

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