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

📄 amc.a

📁 3000TB51配套实验例程 1八段数码管显示实验 等
💻 A
字号:
;	“验证式”	实验三  脉冲计数(定时/记数实验)

;对定时器0外部输入的脉冲信号进行计数且显示
OUTBIT   equ 0e101h
CLK164   equ 0e102h  ; 段控制口(接164时钟位)
DAT164   equ 0e102h  ; 段控制口(接164数据位)
LEDBuf equ   40h
IN       equ 0e103h


        ORG 0000h
	MOV SP,#60H
	MOV DPTR,#0e100H     ;8155初始化
     	MOV A,#03H
	MOVX @DPTR,A

	MOV TMOD,#05H       ;定时器初始化
	MOV TH0,#00H
	MOV TL0,#00H
	SETB TR0
LOOP0: MOV R2,TH0
	MOV R3,TL0
	LCALL LOOP1
	MOV R0,#40H
	MOV A,R6
	LCALL PTDS
	MOV A,R5
	LCALL PTDS
	MOV A,R4
	LCALL PTDS
	LCALL DISPLAY
	SJMP LOOP0
LOOP1:	CLR A               ;二转十子程序
	MOV R4,A
	MOV R5,A
	MOV R6,A
	MOV R7,#10H
LOOP2:	CLR C
	MOV A,R3
	RLC A
	MOV R3,A
	MOV A,R2
	RLC A
	MOV R2,A
	MOV A,R6
	ADDC A,R6
	DA A
	MOV R6,A
	MOV A,R5
	ADDC A,R5
	DA A
	MOV R5,A
	MOV A,R4
	ADDC A,R4
	DA A
	MOV R4,A
	DJNZ R7,LOOP2
	RET
PTDS:	MOV R1,A            ;拆字子程序
	ACALL PTDS1
	MOV A,R1
	SWAP A
PTDS1:	ANL A,#0FH
	MOV @R0,A
	INC R0
	RET
Delay:
        mov   r7, #0          ; 延时子程序

DelayLoop:
        djnz  r7, DelayLoop
        djnz  r6, DelayLoop
        ret

DISPLAY:setb 0d3h
        mov   r0, #LEDBuf
        mov   r1, #6          ; 共6个八段管
        mov   r2, #00000001b  ; 从左边开始显示
Loop:
        mov   dptr, #OUTBIT
        mov   a, #00h
        movx  @dptr, a        ; 关所有八段管

        mov   a, @r0
        mov dptr,#LEDmap
        movc a,@a+dptr
        mov   B, #8           ; 送164
DLP:
        rlc   a
        mov   r3, a
        mov   acc.0, c
        anl  a,#0fdh
        mov   dptr, #DAT164
        movx  @dptr, a
        mov   dptr, #CLK164
        orl a,#02h
        movx  @dptr, a
        anl a,#0fDh
        movx  @dptr, a
        mov   a, r3
        djnz  B, DLP
        mov   dptr, #OUTBIT
        mov   a, r2
        movx  @dptr, a        ; 显示一位八段管
        mov   r6, #1
        call  Delay
        mov   a, r2           ; 显示下一位
        rl    a
        mov   r2, a
        inc   r0
        djnz  r1, Loop
        mov   dptr, #OUTBIT
        mov   a, #0
        movx  @dptr, a        ; 关所有八段管
        clr 0d3h
        ret
LEDMAP:                       ; 八段管显示码
       db    3fh, 06h, 5bh, 4fh, 66h, 6dh, 7dh, 07h
       db    7fh, 6fh, 77h, 7ch, 39h, 5eh, 79h, 71h
	 END

⌨️ 快捷键说明

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