51单片机外部中断实验
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验6 外部中断实验
(仿真部分)
一、实验目的
1. 学习外部中断技术的基本使用方法。
2. 学习中断处理程序的编程方法。
二、实验内容
在INT0和INT1上分别接了两个可回复式按钮,其中INT0上的按钮每按下一次则计数加一,其中INT1上的按钮每按下一次则计数减一。P1.0~ P1.3接LED灯,以显示计数信号。
三、实验说明
编写中断处理程序需要注意的问题是:
1.保护进入中断时的状态,并在退出中断之前恢复进入时的状态。
2.必须在中断处理程序中设定是否允许中断重入,即设置EX0位。
3.INT0和INT1分别接单次脉冲发生器。P1.0~ P1.3接LED灯,以查看计数信号.
四、硬件设计
利用以下元件:AT89C51、BOTTON、CAP、CAP-POL、CRYSTAL、RES、NOT、LED-Yellow。设计出如下的硬件电路。晶振频率为12MHz。
五、参考程序框图
开始
设置有关中断控制寄存器
开外中断INT0、INT1
设置P1.0~ 3初始状态
显示循环等待中断
INT0中断入口
计数加一
保护现场
恢复现场
中断返回
主程序框图INT0中断处理程序框图
实验6 外部中断实验
(实验箱部分)
1.实验目的
认识中断的基本概念
学会外部中断的基本用法
学会asm和C51的中断编程方法
2.实验原理
图按键中断
【硬件接法】
P1.1控制LED,低电平点亮
P3.3/INT1接按键,按下时产生低电平
【运行效果】
程序工作于中断方式,按下按键K2后,LED点亮,1.5秒后自动熄灭。
8051单片机有/INT0和/INT1两条外部中断请求输入线,用于输入两个外部中断源的中断请求信号,并允许外部中断源以低电平或下降沿触发方式来输入中断请求信号。/INT0和/INT1中断的入口地址分别是0003H和0013H。
TCON寄存器(SFR地址:88H)中的IT0和IT1位分别决定/INT0和/INT1的触发方式,置位时为下降沿触发,清零时为低电平触发。实际应用时,如果外部的中断请求信号在产生后能够在较短时间内自动撤销,则可以选择低电平触发。在中断服务程序里要等待其变高后才能返回主程序,否则会再次触发中断,产生不必要的麻烦。
如果外部的中断请求信号产生后可能长时间后才能撤销,则为了避免在中断服务程序里长时间无谓等待,可以选择下降沿触发。下降沿触发是“一次性”的,每次中断只会有1个下降沿,因此中断处理程序执行完后可以立即返回主程序,而不必等待中断请求信号恢复为高电平,这是一个重要的技巧。
3. 实验步骤
●参考实验例程,自己动手建立Keil C51工程。注意选择CPU类型。Philips半导体的
P89V51RB2。
●编辑源程序,编译生成HEX文件。
●ISP下载开关扳到“00”,用Flash Magic软件下载程序HEX文件到MCU BANK1,运行。
运行Flash Magic软件。各步骤操作如下:
Step 1:
COM Port:选择实际使用的串行口,通常为COM1;
Baud Rate:波特率不可设置得过高,推荐用9600;
Device:请选择正确的型号89V51RB2;
Interface:选择None(ISP)。
Step 2:请勾中“Erase blocks used by Hex File”。
Step 3:装入你的程序文件,注意必须为HEX格式。
Step 4:
请勾中“Verify after programming”(编程后校验);
对其它几项如果不了解,请不要勾中。
Step 5:
请先给电路板上电,同时按住复位键不松手,然后点击Flash Magic软件的“Start”按钮。当出现提示您复位的对话框时再松开复位键,ISP下载过程开始。如果您的电路板没有设置复位键,可以先点击“Start”,然后给电路板上电。
Step 6:运行程序
ISP下载结束后,按一次复位键或者重新上电程序即开始运行。
运行程序,芯片工作于中断方式,按下按键K2(接P3.3/INT1管脚)后,LED点亮,1.5秒后自动熄灭。