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

📄 shumaguan-play.asm

📁 片机开发系统演示程序 - 8位数码管显示 */ /* */ /* 8位数码管从左至右显示 0-7
💻 ASM
字号:
;*************
;*******************************************************************

         DISSTART  EQU  40H    ;显示单元首地址
         LED_DATA  EQU  P0     ;数码管数据口定义

;-----------------------------------------------------
         ORG 0000H
         AJMP MAIN
         ORG 0030H
;-----------------------------------------------------
MAIN:
         MOV  SP,#60H
         MOV  P0,#0FFH
         MOV  P2,#0FFH
         MOV  R2,#08H
         MOV  R0,#DISSTART
         MOV  R1,#00H

MAIN1:
         MOV  A,R1           
         MOV  @R0,A          ;将0-7分别存入显示单元
         INC  R1
         INC  R0
         DJNZ  R2,MAIN1

M_LOOP:
         ACALL  PLAY
         JMP  M_LOOP

;---------------------------------------------------------
PLAY:
        MOV R0,#DISSTART      ;获得显示单元首地址
        MOV R1,#0FEH          ;从第一个数码管开始
        MOV R2,#08H           ;共显示3位数码管
DISP1:
        MOV A,@R0             ;获得当前位地址
        MOV DPTR,#TAB_NU      ;获得表头
        MOVC A,@A+DPTR        ;查表获得显示数据
        MOV LED_DATA,A        ;显示数据
        MOV P2,R1             ;开始显示当前位
        MOV A,R1              ;准备显示下一位
        RL A
        MOV R1,A              ;下一位
        INC R0                ;取下一个单元地址
        LCALL DELAY2MS        ;延时 2 MS
        DJNZ R2,DISP1         ;重复显示下一个
        MOV  P2,#0FFH         ;关闭显示
        RET                   ;显示完成,返回
;---------------------------------------------------------
;延时子程序
;---------------------------------------------------------
DELAY2MS:
        MOV  R6,#10
DEL1:
        MOV  R7,#100
        DJNZ  R7,$
        DJNZ  R6,DEL1
        RET
;---------------------------------------------------------
TAB_NU:
    DB 0C0H,0F9H,0A4H,0B0H,099H,092H,082H,0F8H
    DB 080H,090H,0FFH,088H,083H,0C6H,0A1H,086H,08EH
;---------------------------------------------------------
        END

⌨️ 快捷键说明

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