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

📄 lesson2-1.asm

📁 单片机实验
💻 ASM
字号:
OUTPORT EQU    0CFB0H
CSEG AT 0000H
       	  LJMP START
CSEG AT 401BH    ;定时器/计数器1中断程序入口地址
        LJMP INT
CSEG AT 4100H
START:  MOV    A,#01H    ;首显示码
        MOV    R1,#03H   ;03是偏移量,即从基址寄存器到表首的距离
        MOV    R0,#5H    ;05是计数值
        MOV    TMOD,#10H ;计数器置为方式1
        MOV    TL1,#0AFH  ;装入时间常数
        MOV    TH1,#03CH
        ORL    IE,#88H   ;CPU中断开放标志位和定时器
                         ;1溢出中断允许位均置位
        SETB   TR1       ;开始计数
LOOP1:  CJNE   R0,#00,DISP
        MOV    R0,#5H   ;R0计数计完一个周期,重置初值
        INC    R1        ;表地址偏移量加1
        CJNE   R1,#31H,LOOP2
        MOV    R1,#03H   ;如到表尾,则重置偏移量初值
LOOP2:  MOV    A,R1      ;从表中取显示码入累加器
        MOVC   A,@A+PC
        JMP    DISP
        DB     01H,03H,07H,0FH,1FH,3FH,7FH,0FFH,0FEH,0FCH
        DB     0F8H,0F0H,0E0H,0C0H,80H,00H,0FFH,00H,0FEH
        DB     0FDH,0FBH,0F7H,0EFH,0DFH,0BFH,07FH,0BFH,0DFH
        DB     0EFH,0F7H,0FBH,0FDH,0FEH,00H,0FFH,00H
DISP:   MOV    P1,A      ;将取得的显示码从P1口输出显示
        JMP    LOOP1
INT:    CLR    TR1       ;停止计数
        DEC    R0        ;计数值减一
        MOV    TL1,#0AFH  ;重置时间常数初值
        MOV    TH1,#03CH
        SETB   TR1       ;开始计数
        RETI             ;中断返回
END

⌨️ 快捷键说明

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