附录:中断方式的编程应用(学生版) 联系客服

发布时间 : 星期六 文章附录:中断方式的编程应用(学生版)更新完毕开始阅读2b53a343b307e87101f6967d

1. 初始化 2. 初始化 等待中断 等待中断 N INT0? Y INT0中断子程序 (开定时器) N INT1? Y INT1中断子程序(由中间向两边逐次循环点亮LED) 产生定时器0溢出中断 定时器0溢出中断子程序 (循环点亮8个LED)

程序流程图

3. 实验程序,分号后加注释,便于查看和调试。

1.用中断INT0控制8个LED发光二极管由左向右逐次循环亮灭。 ORG 0000H LJMP main ORG 0003H LJMP WBZD0 ORG 000BH LJMP DSQ0 ORG 0030H

main: ;

MOV P0,#0FFH ; MOV SP, #60H

MOV TMOD,#00000001B ; SETB IT0 ; MOV IP, 02H SETB EX0

SETB EA ; JMP $

ORG 0100H WBZD0:

MOV P0,#0FEH ;

CLR EX0

MOV TL0,#00H ; MOV TH0, #00H

SETB TR0 ;

SETB ET0 ;

SETB EX0 RETI DSQ0:

CLR EX0 CLR ET0 CLR TR0

MOV TL0,#00H ; MOV TH0, #00H MOV A, P0 RL A MOV P0, A SETB TR0 SETB ET0 SETB EX0 RETI END

2、用中断INT1控制8个LED发光二极管由中间向两边逐次循环亮灭。

ORG 0000H

LJMP MAIN ORG 0013H LJMP WBZD1 ORG 0030H MAIN:

MOV SP,#60H ;

MOV P0,#0FFH ; SETB IT1 ; SETB EX1

SETB EA ; JMP $ WBZD1:

CLR EX1

MOV P0, #0E7H ;

LCALL DELAY ; MOV P0, #0DBH LCALL DELAY MOV P0, #0BDH LCALL DELAY MOV P0, #7EH SETB EX1

RETI DELAY:

MOV R0, #0FFH ; MOV R1, #0FFH DELAY1:

DJNZ R1, DELAY1 DJNZ R0, DELAY1 RET END

4. 编译和调试。

5. 软件调试成功后,完成硬件连接。 实验内容1接线方法:

1 将XL1000单片机综合仿真试验仪的串口连接到计算机的COM口,注意连接的是哪一个几号COM。由稳压电源为实验仪提供电源。

2 接8个发光二极管。用一条8PIN数据排线将八路指示灯部份JP32接到CPU部份的P0口JP51。

3 接外部中断。用一条1PIN数据排线将端口按键部分JP48的任何一个接到CPU部份JP53中的的P3.2(INT0)。

实验内容2接线方法:

1 将XL1000单片机综合仿真试验仪的串口连接到计算机的COM口,注意连接的是哪一个几号COM。由稳压电源为试验仪提供电源。

2 接8个发光二极管。用一条8PIN数据排线将八路指示灯部份JP32接到CPU部份的P0口JP51。

3 接外部中断。用一条1PIN数据排线将端口按键部分JP48的任何一个接到CPU部份JP53中的的P3.3(INT1)。

6.将程序烧写到单片机上,试运行。若出现问题,修改程序,重新编译和调试,直至运行成功。

实验结果:

1. 按下连接P3.2(INT0)的按键,8个LED发光二极管由左向右逐次循环亮灭。 2. 按下连接P3.3(INT1)的按键,8个LED发光二极管由中间向两边逐次循环亮灭。 实验报告要求:

1.分析程序,说出程序的功能,画出流程图。 2.程序加注释。

3.画出硬件接口原理电路图。

4. 实验小结(包括理论知识的总结和实验结果的分析)