单片机外部中断仿真实验

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

图2 程序运行 结果
9 2013年3月
2006-2-10
传感器原理与应用
9
51系列单片机中断系统实验Proteus仿真
4 总结与提示

在有多个中断同时存在时注意中断优先级的设置
以及中断中的触发方式;

在Proteus与Keil的联调过程中,可以综合运用Keil 中的多种调试功能来详细观察电路的工作情况; 在某些情况下中断子程序中需要对各寄存器进行 保护。
2006-2-10 传感器原理与应用
2 2013年3月
2
51系列单片机中断系统实验Proteus仿真

(2) 中断优先级控制寄存器IP
(地址为B8H )
位地址 BF BE BD BC BB BA B9 B8 / / PS PT1 PX1 PT0 PX0 位符号 /

PX0—— 外部中断0优先级设定位; PT0—— 定时中断0优先级设定位; PX1—— 外部中断1优先级设定位; PT1—— 定时中断1优先级设定位; PS—— 串行中断优先级设定位。 为0的位优先级为低;为1的位优先级为高。
2006-2-10



7 2013年3月
传感器原理与应用
7
51系列单片机中断系统实验Proteus仿真


(2)加载目标代码文件
(I) 在Proteus ISIS中,左键双击AT89C51元件打开 “Edit Component”对话框,设置单片机的频率为 12MHz; (II) 在该窗口的“Program File”栏中,选择先前在Keil 中编译产生的“.HEX”文件; (III) 在Proteus ISIS菜单栏中选择【File】→【Save Design】选项,保存设计;
中断控制是提供给用户使用的中断控制手段,实际 上就是控制一些寄存器。51系列用于此目的的控制 寄存器有四个:TCON、IE、SCON及IP。
2006-2-10 传感器原理与应用

1 2013年3月
1
51系列单片机中断系统实验Proteus仿真
(1)中断允许寄存器IE (地址为A8H )
位地址 位符号
2 建立源程序和编译

(1)建立程序文件 (I) 打开Keil µ Vision3,新建Keil项目,选择AT89C51 单片机作为CPU; (II) 新建汇编源文件,编写程序并将其导入到“Source Group 1”中; (III) 在“Options for Target”对话框中,选中“Output” 选项卡中的“Create HEX File”选项和“Debug”选项卡 中的“Use:Proteus VSM Simulator”选项; (IV) 编译源程序,修改程序中的错误直至通过。
Capacitors Capacitors
8051 Family
Generic Generic
CRYSTAL
RES LED
Miscellaneous
Resistors Optoelectronics

Generic LEDs
BUTTON
5 2013年3月
Switches&Relays
2006-2-10



(IV) 在Proteus ISIS菜单栏中,打开“Debug”下拉菜单, 在菜单中选择“Use Remote Debug Monitor”选项,以 支持与Keil的联调。
8 2013年3月 2006-2-10 传感器原理与应用
8
51系列单片机中断系统实验Proteus仿真
3 Proteus调试与仿真
Switches
传感器原理与应用
5
51系列单片机中断系统实验Proteus仿真

(2)电路原理图
元件全部添加后,在Proteus ISIS的编辑区域中按图1所 示的原理图(晶振和复位电路略)连接硬件电路。
图1 电路原理图
6 2013年3月 2006-2-10 传感器原理与应用
6
51系列单片机中断系统实验Proteus仿真
2006-2-10 传感器原理与应用
3 2013年3月
3
51系列单片机中断系统实验Proteus仿真
中断优先级是为中断嵌套服务的,其控制原则如下:

(1) 低优先级中断请求不能打断高优先级的中断服务; 但高优先级中断请求可以打断低优先级的中断服务, 从而实现中断嵌套。 (2) 如果一个中断请求已被响应,则同级的其他中断 响应将被禁止。 (3) 如果同级的多个中断请求同时出现,则按CPU查 询次序确定哪个中断请求被响应,其查询次序为: 外部中断0—定时中断0—外部中断1—定时中断1— 串行中断。


AF EA
AE -
AD -
AC AB ES ET1
AA EX1
A9 ET0
A8 EX0
EA—— 中断允许总控制位;
EA=0—— 中断总禁止,禁止所有中断; EA=1—— 中断总允许;

EX0——外部中断0允许控制位; ET0——定时/计数中断0允许控制位; EX1——外部中断1允许控制位; ET1——定时/计数中断1允许控制位; ES——串行中断允许控制位。 为0的位为禁止中断;为1的位为允许中断。
51系列单片机中断系统实验Proteus仿真
外部中断实验

MCS-51是一个多中断源的单片机,以8051为例,有 三类共五个中断源,分别是两个外部中断,两个定 时器中断和一个串行中断。外部中断是由外部原因 引起的,共有两个中断源,即外部中断0和外部中断 1。它们的中断请求信号分别由引脚(P3.2)和(P3.3)引 入;外部中断请求信号有两种,即低电平有效方式 和脉冲后沿负跳有效方式。
4


4 2013年3月
2006-2-10
传感器原理与应用
51系列单片机中断系统实验Proteus仿真
1 Proteus电路设计

(1) 元件清单列表 打开Proteus ISIS编辑环境,按表1所列的清单添加元件
表1 元件清单
元件名称 所属类 所属子类
AT89C51
CAP CAP-ELEC
Microprocessor ICs

wenku.baidu.com
(I) 在Keil的菜单栏中选择【Debug】→【Start/Stop Debug Session】选项,或者在工具栏中直接单击图标, 进入调试环境; (II) 按“F5”键或图标,顺序执行程序; (III) 在Proteus ISIS界面中,按动开关,可看到数码管 显示的变化,如图2所示。

10 2013年3月
2006-2-10
传感器原理与应用
10
相关文档
最新文档