微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > MCU和单片机设计讨论 > 51单片机汇编中断系统问题

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

时间:10-02 整理:3721RD 点击:
用中断系统实现这样一个程序:上电后,静态数码管以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
(地方有限,只写了主程序,延时程序和字符表没写)
用中断程序实现灯的常亮常灭也会写,但是碰到这种循环的程序,中断系统不知道该搁在哪了。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top