51单片机汇编中断系统问题

2019-07-15 18:06发布

用中断系统实现这样一个程序:上电后,静态数码管以0-9顺序或逆序循环显示,;检测到有效的按键后(由外部中断实现按键检测),静态数码管从当前显示数字开始改变循环方向。
顺序循环和逆序循环管单独的程序都会写,分别为:
加:
MAIN:       
           ANL A,#0FH            ;屏蔽累加器的高4位
        MOV DPTR,#TAB        ;将数据表格的首地址 0100H存入16位的数据地址指针DPTR中
        MOVC A,@A+DPTR        ;查表
        MOV P0,A            ;将累加器的值送到P0口显示
          ACALL DEL            ;调用延时子程序
        MOV A,20H                ;将20H单元的数据传送给累加器
        INC A                        ;累加器+1
        DA A                        ;二-十进制调整
        MOV 20H, A                 
        AJMP MAIN
减:
MAIN:
           ANL A,#0FH            ;屏蔽累加器的高4位
        MOV DPTR,#TAB        ;将数据表格的首地址 0100H存入16位的数据地址指针DPTR中
        MOVC A,@A+DPTR        ;查表
        MOV P0,A            ;将累加器的值送到P0口显示
          ACALL DEL            ;调用延时子程序
    MOV A,20H                ;将20H单元的数据传送给累加器
    JZ  LOOP1
         DEC A                       
        MOV 20H, A                 
        AJMP MAIN

LOOP1:
       MOV A,#09H
           MOV 20H,A
           AJMP MAIN

(地方有限,只写了主程序,延时程序和字符表没写)
用中断程序实现灯的常亮常灭也会写,但是碰到这种循环的程序,中断系统不知道该搁在哪了。。。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。