实验9多重中断及中断嵌套
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
4.1实验9多重中断及中断嵌套
4.1.1实验目的
了解MCS-51单片机的中断组成、中断原理、中断处理及响应过程、中断优先级、外部中断的中断方式,掌握中断功能的编程方法。
4.1.2实验设备
PC机一台,DP-51PROC单片机综合仿真实验仪一台或DICE-598H+增强型单片机开发实验仪一台。
4.1.3实验内容
P1.1连接蜂鸣器,P3.2、P3.3、P1.7分别连接K1~K3;用户按下K1~K3,蜂鸣器发出1KHz、2KHz、4KHz声音。仔细观察一个按键或若干键同时按下时程序执行状态。电路如图4-6所示。
图 4-6 多重中断
硬件连线方法:
用导线连接A2区INT0、INT1、P17插孔至D1区K1~K3插孔,
z 3插孔至A4区X15、X10、X6插孔,A4
4.1.4 实验参
z DP-51PROC :A2区P11插孔至B5区BUZZ 插孔。
DICE-598H+:用导线连接D1区K1~K 区X2插孔至B2区VIN 插孔,B2区J1外接扬声器,插孔功能详见附录1。
考程序;Exp9_1:多重中断及中断嵌套
;系统时钟11.0592MHz ,P1.1连接蜂鸣器,P3.2、P3.3、P1.7分别连接K1~K3 ;用户按下K1~K3,蜂鸣器发出1KHz 、2KHz 、4KHz 声音
;
XTH EQU 30H ;存放定时器常数高8位
XTL EQU 31H ;存放定时器常数低8位
ORG 0000H
ljmp Start
ORG 0003H
ljmp Ex0SVR
ORG 0013H
ljmp Ex1SVR
ORG 001BH
ljmp T1SVR
ORG 0100H
Start: mov SP,#5FH ;堆栈区设在未用RAM 的高端
mov TMOD,#00010000B
mov TH1,#0FFH
mov TL1,#0F0H
clr TR1
mov IE,#10001101B
mov IP,#00001000B;设置不同的优先级,观察执行效果
mov P1,#0FFH
mov P3,#0FFH
ScanKey:mov A,P1
jb ACC.7,ScanKey
Key1P: mov XTH,#0FEH
mov XTL,#33H
setb TR1
sjmp ScanKey
Ex0SVR: mov XTH,#0FFH
mov XTL,#19H
setb TR1
reti
Ex1SVR: mov XTH,#0FFH
mov XTL,#8CH
setb TR1
reti
T1SVR: mov TH1,XTH
mov TL1,XTL
cpl P1.1
reti
END
4.1.5
程序中,哪一个中断源的优先级最高?如果改为低级,会有什么现象发生? 思考题⑴参考⑵把K1~K3以不同的顺序,依次按下,观察程序执行情况,分析原因。