实验3 外部中断实验报告
- 格式:doc
- 大小:56.50 KB
- 文档页数:4
实验三外部中断实验报告班级:学号:姓名:教师:一、实验目的1、掌握单片机外部中断的原理及过程。
2、掌握单片机外部中断程序的设计方法。
3、掌握单片机外部中断时中断方式的选择方法。
二、实验内容如下图所示,P3.2设为输入,P2设为输出位,连有8个发光二极管D1~D8。
每当发生外部中断时,发光二极管以向下流水灯的方式点亮。
分别选择边沿触发外部中断放是和电平触发外部中断方式两种。
三、编程提示1、P3口是8位准双向口,具有双重功能:第一功能和P1口一样,作为输入输出口,也有字节操作和位操作两种方式,每一位可分别定义为输入或输出;第二功能定义如下:P3.0 RXD 串行输入口P3.1 TXD 串行输出口P3.2 INT0 外部中断0请求输入线P3.3 INT1 外部中断1请求输入线P3.4 T0定时器/计数器T0外部计数器脉冲输入线P3.5 T1定时器/计数器T1外部计数器脉冲输入线P3.6 WR外部数据存贮器写脉冲输出线P3.7 RD外部数据存贮器读脉冲输出线2、各中断服务程序入口地址:外部中断0 03H定时器/计数器T1溢出中断0BH外部中断1 13H定时器/计数器1BH串行口中断23H3、外部中断的产生条件中断允许寄存器IE:EA ES ET1 EX1 ET0 EX0(1)外部中断源允许中断(中断0:EX0=1;中断1:EX1=1)。
(2)CPU开中断(EA=1)。
(3)外部中断方式CPU发出中断申请。
4、外部中断方式的选择控制TCON:TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0IT0是选择文字则外部中断0请求(INT0)边沿触发方式或电平触发方式的控制位。
前一方式IT0=1,后一方式IT0=0。
IT1是选择外部中断1请求(INT1)为边沿触发方式或电平触发方式的控制位。
前一方式IT1=1,后一方式IT1=0。
当8031复位后,TCON被清0。
5、外部中断电路负脉冲作为中断请求信号时,为了保证中断的唯一性,必须加上消除开关抖动的电路或者去抖动延时程序,保证每次只产生单脉冲,构成边沿触发方式外部中断电路。
单片机外部中断实验报告实验三外部中断实验报告班级:学号:姓名:教师:一、实验LI的1、掌握单片机外部中断的原理及过程。
2、掌握单片机外部中断程序的设计方法。
3、掌握单片机外部中断时中断方式的选择方法。
二、实验内容如下图所示,P3.2设为输入,P2设为输出位,连有8个发光二极管DPD8O每当发生外部中断时,发光二极管以向下流水灯的方式点亮。
分别选择边沿触发外部中断放是和电平触发外部中断方式两种。
三、编程提示1、P3 口是8位准双向口,具有双重功能:第一功能和P1 口一样,作为输入输出口,也有字节操作和位操作两种方式,每一位可分别定义为输入或输出;第二功能定义如下:P3. 0RXD串行输入口P3. 1TXD串行输出口P3. 2INTO外部中断0请求输入线P3. 3INT1外部中断1请求输入线P3.4TO定时器/计数器TO外部计数器脉冲输入线P3. 5T1定时器/计数器T1外部计数器脉冲输入线P3. 6WR外部数据存贮器写脉冲输出线P3. 7RD外部数据存贮器读脉冲输出线2、各中断服务程序入口地址:外部中断003H定时器/计数器T1溢出中断OBH外部中断113H定时器/计数器1BH串行口中断23H3、外部中断的产生条件中断允许寄存器IE:EAESET1EX1ET0EX0(1)外部中断源允许中断(中断0: EX0=l;中断1: EXl=l)o(2)CPU 开中断(EA二1)。
(3)外部中断方式CPU发出中断申请。
4、外部中断方式的选择控制TCOX:TF1TR1TF0TR0IE1IT1IE0IT0IT0是选择文字则外部中断0请求(INTO)边沿触发方式或电平触发方式的控制位。
前一方式IT0二1,后一方式IT0二0。
IT1是选择外部中断1请求(INT1)为边沿触发方式或电平触发方式的控制位。
前一方式IT1=1,后一方式ITl=0o当8031复位后,TCON被清0。
5、外部中断电路负脉冲作为中断请求信号时,为了保证中断的唯一性,必须加上消除开关抖动的电路或者去抖动延时程序,保证每次只产生单脉冲,构成边沿触发方式外部中断电路。
stm32外部中断实验报告_STM32实例外部中断实验上⼀篇⽂章我们介绍了 STM32F10x 的中断,这次我们就来学习下外部中断。
本⽂中要实现的功能与按键实验⼀样,即通过按键控制LED,只不过这⾥采⽤外部中断⽅式进⾏控制。
学习时可以参考《STM32F10x 中⽂参考⼿册》-9 中断和事件章节。
外部中断介绍EXTI 简介STM32F10x 外部中断/事件控制器(EXTI)包含多达 20 个⽤于产⽣事件/中断请求的边沿检测器。
EXTI 的每根输⼊线都可单独进⾏配置,以选择类型(中断或事件)和相应的触发事件(上升沿触发、下降沿触发或边沿触发),还可独⽴地被屏蔽。
EXTI 结构框图EXTI 框图包含了 EXTI 最核⼼内容,掌握了此框图,对 EXTI 就有⼀个全局的把握,在编程的时候思路就⾮常清晰。
从图中可以看到,有很多信号线上都有标号 9 样的“20”字样,这个表⽰在控制器内部类似的信号线路有 20 个,这与 STM32F10x 的 EXTI 总共有20 个中断/事件线是吻合的。
因此我们只需要理解其中⼀个的原理,其他的 19个线路原理都是⼀样的。
EXTI 分为两⼤部分功能,⼀个产⽣中断,另⼀个产⽣事件,这两个功能从硬件上就有所差别,这个在框图中也有体现。
从图中标号 3 的位置处就分出了两条线路,⼀条是 3-4-5 ⽤于产⽣中断,另⼀条是 3-6-7-8⽤于产⽣事件。
下⾯我们就来介绍下这两条线路:(1)⾸先看下产⽣中断的这条线路(1-2-3-4-5)1.标号 1 为输⼊线,EXTI 控制器有 20 个中断/事件输⼊线,这些输⼊线可以通过寄存器设置为任意⼀个 GPIO,也可以是⼀些外设的事件,这部分内容我们会在后⾯专门讲解。
输⼊线⼀般是存在电平变化的信号。
2.边沿检测电路,EXTI 可以对触发⽅式进⾏选择,通过上升沿触发选择寄存器和下降沿触发选择寄存器对应位的设置来控制信号触发。
边沿检测电路以输⼊线作为信号输⼊端,如果检测到有边沿跳变就输出有效信号 1 给红⾊框 3 电路,否则输出⽆效信号 0。
实验三中断控制实验
1、实验目的
⑴学习51单片机的中断控制原理。
⑵学习51单片机的外部中断的编程方法。
⑶学习数据的堆栈操作原理和编程方法。
2、实验任务
图1外部中断控制接口电路原理图
实验任务是:在图1中,P2连接8个LED、第12脚(即INT0引脚)连接一个10kΩ的上拉电阻,让该引脚保持为High,另外再连接一个按钮开关(1NT0)。
当主程序正常执行时,P2所连接的8个LED将闪烁。
若按INT0按钮开关,则进入中断状态,P2所连接的8个LED将变成单灯左移,而左移3圈(从最左边到最右边为1圈)后,恢复中断前的状态,程序将继续执行8灯闪烁的功能。
3、实验内容
⑴编制完成实验任务的程序。
⑵绘制实验任务的原理图。
⑶结合硬件原理图,仿真调试程序,记录实验数据和现象。
4、实验预习要求
⑴认真阅读本实验指导书,领会实验目的的要求和实验内容。
⑵复习教材中有关内容。
⑶了解51单片机的中断控制原理。
⑷了解与51单片机的中断控制相关的寄存器的用法。
⑸了解51单片机的各中断源的中断服务子程序的入口地址。
⑹根据实验内容编好各项源程序,为实验做好软件准备。
5、思考题
⑴说明针对外部输入,查询法和中断法有何区别?
⑵若把一个按钮开关改到INT1引脚,实现同样的任务,实验程序应该如何修改,请写出修改后的程序。
6、实验报告要求
⑴写出所编写的程序,需加注释。
⑵写出思考题的答案。
外部中断实验外部中断实验一、实验目的1掌握外部中断技术的基本使用方法2掌握中断处理程序的编写方法二、实验说明1、外部中断的初始化设置共有三项内容:中断总允许即EA=1,外部中断允许即EXi=1(i=0或1),中断方式设置。
中断方式设置一般有两种方式:电平方式和脉冲方式,本实验选用后者,其前一次为高电平后一次为低电平时为有效中断请求。
因此高电平状态和低电平状态至少维持一个周期,中断请求信号由引脚INT0(P3.2)和INT1(P3.1)引入,本实验由INT0(P3.2)引入。
2、中断服务的关键:a、保护进入中断时的状态。
堆栈有保护断点和保护现场的功能使用PUSH指令,在转中断服务程序之前把单片机中有关寄存单元的内容保护起来。
b、必须在中断服务程序中设定是否允许中断重入,即设置EX0位。
c、用POP指令恢复中断时的现场。
3、中断控制原理:中断控制是提供给用户使用的中断控制手段。
实际上就是控制一些寄存器,51系列用于此目的的控制寄存器有四个:TCON 、IE 、SCON 及IP。
4、中断响应的过程:首先中断采样然后中断查询最后中断响应。
采样是中断处理的第一步,对于本实验的脉冲方式的中断请求,若在两个相邻周期采样先高电平后低电平则中断请求有效,IE0或IE1置“1”;否则继续为“0”。
所谓查询就是由CPU测试TCON和SCON中各标志位的状态以确定有没有中断请求发生以及是那一个中断请求。
中断响应就是对中断请求的接受,是在中断查询之后进行的,当查询到有效的中断请求后就响应一次中断。
INT0端接单次脉冲发生器。
P1.0接LED灯,以查看信号反转。
三、实验内容及步骤1、使用单片机最小应用系统1模块,P1.0接发光二极管,INTO 接单次脉冲输出端。
2、安装好仿真器,用串行数据通信线连接计算机与仿真器,把仿真头插到模块的单片机插座中,打开模块电源,打开仿真器电源。
3、启动计算机,打开Keil仿真软件,进入仿真环境。
实验三定时器及外部中断实验一、实验目的1)熟悉VC5416的定时器工作原理。
2)掌握VC5416定时器的编程控制方法。
3)学会使用定时器的中断方式来控制程序执行方法。
4)掌握外部中断的编程控制方法,理解DSP对于中断的响应的过程。
5)了解并学习混合编程的实现方法。
二、实验设备1)计算机一套,DSP硬件仿真器一台,实验箱一台。
2)CCS4.1-CCS5.5软件版本。
3)源程序及链接命令文件见:D:\ EXPER\EXP3目录下的.asm 、.cmd、.C 和.lib文件。
三、实验步骤(一)、连接仿真器,将仿真器插接到C5416的JTAG接口上,另一头插接到电脑的USB接口上,因为仿真器是金属外壳,容易和箱子内部的电路触碰造成短路,从而对实验箱造成损坏,这个要特别注意,也不允许在机箱打开电源情况下插拔仿真器。
(二)、实验箱配置及连线:C5416DSP核心板上的SW1的1-6的开始设置为off off off off on on(上电后工做于1/2分频器方式,其它实验也按照此设置不变,我试验过改为PLL*2方式仿真器就连接不上了),SW2设置为on on on on。
将DSP核心板所在试验箱引脚连线区的BCANRX(C54的XF)引脚,与指示灯连线区LAMP的L1连接起来,这样就可以通过XF控制这个L1这个方光管的亮灭了。
将DSP核心板所在试验箱引脚连线区的INT0(C54的外部中断0输入)引脚与单脉冲按键PAULSE的P-(按下输出负脉冲)连接起来,这样按下按键时,就会给DSP的INT0中断引脚发送一个负脉冲。
连线照片见程序目录中的图片文件。
(二)、打开实验箱电源开关。
(三)、使用给定的文件,按照实验一的步骤建立实验项目,例如工作区目录为D:\ exp3 中建立一个exp3的实验项目,添加所有的给定的文件。
(四)、仿真调试方法1、通过菜单Project- Build All 对项目进行编译和链接,如下:如果有错误会出现在problem 窗口中。
外部中断实验总结一、实验目的本次实验旨在通过外部中断的方式,实现对单片机的中断响应,并掌握中断程序设计方法。
二、实验原理外部中断是指由单片机外部硬件引脚产生的中断信号,当引脚电平发生变化时,单片机会立即停止当前执行的程序,跳转到相应的中断服务程序中执行。
在本次实验中,我们使用了8051单片机的INT0和INT1两个外部中断引脚。
三、实验器材1. 8051单片机开发板2. 电脑(用于编写和下载程序)3. LED灯4. 按钮开关四、实验步骤1. 编写程序:首先需要编写一个可以响应外部中断的程序。
我们可以通过设置相应寄存器来使单片机响应INT0和INT1两个引脚上的信号。
例如,在P3口接入一个按键开关,并将其与INT0引脚相连,则当按键被按下时,INT0引脚会被拉低,从而触发一个外部中断。
此时单片机会跳转到相应的ISR(Interrupt Service Routine)函数中执行。
2. 烧录程序:将编写好的程序烧录到8051芯片上。
这可以通过专门的烧录器或者通过串口下载实现。
在烧录程序之前,需要将引脚连接好,并确定中断触发方式(上升沿触发或下降沿触发)。
3. 测试程序:将LED灯连接到单片机的某个IO口上,以便测试程序是否可以正常响应外部中断。
当按下按钮开关时,LED灯应该会亮起。
五、实验结果通过本次实验,我们成功地实现了对8051单片机的外部中断响应,并掌握了中断程序设计方法。
在实验过程中,我们还学习了如何使用按键开关和LED灯来测试程序的正确性。
六、实验总结本次实验是一项非常基础的单片机实验,但是它对于初学者来说非常重要。
通过这个实验,我们不仅学会了如何编写一个简单的中断服务程序,还学会了如何使用按键开关和LED灯来测试程序的正确性。
这些知识对于今后的单片机编程工作都非常有帮助。
同时,在本次实验中我们也遇到了一些问题,例如引脚连接不正确等等,在解决这些问题的过程中也增加了我们对单片机原理和电路设计方面的认识。
第1篇一、实验目的1. 理解中断的概念和作用。
2. 掌握单片机中断系统的基本原理和配置方法。
3. 学会编写中断服务程序,实现外部中断和定时器中断的应用。
4. 通过实验加深对中断系统在实际应用中的理解。
二、实验原理中断是计算机系统中一种重要的机制,它允许CPU在执行程序过程中,响应某些外部或内部事件,从而暂停当前程序的执行,转而处理这些事件。
单片机的中断系统主要包括外部中断和定时器中断两种类型。
三、实验环境1. 单片机:80C512. 开发环境:Keil for 80513. 仿真软件:Proteus4. 实验电路:外部按钮电路、LED灯电路、定时器电路四、实验内容1. 外部中断实验(1)实验目的:学习外部中断的工作原理,掌握外部中断的配置和编程方法。
(2)实验步骤:a. 创建80C51固件项目,并在Keil中编写程序。
b. 配置外部中断源,设置中断优先级。
c. 编写外部中断服务程序,实现LED灯的闪烁。
d. 在Proteus中搭建实验电路,并进行仿真测试。
(3)实验结果:当按下按钮时,LED灯闪烁,松开按钮后LED灯熄灭。
2. 定时器中断实验(1)实验目的:学习定时器中断的工作原理,掌握定时器中断的配置和编程方法。
(2)实验步骤:a. 创建80C51固件项目,并在Keil中编写程序。
b. 配置定时器工作模式,设置定时时间。
c. 编写定时器中断服务程序,实现LED灯的闪烁。
d. 在Proteus中搭建实验电路,并进行仿真测试。
(3)实验结果:定时器中断触发后,LED灯闪烁,达到设定时间后停止闪烁。
五、实验分析1. 外部中断实验分析通过外部中断实验,我们了解了外部中断的工作原理和配置方法。
在实验中,我们设置了外部中断源,并编写了中断服务程序,实现了LED灯的闪烁。
这表明外部中断可以有效地响应外部事件,并执行相应的操作。
2. 定时器中断实验分析通过定时器中断实验,我们掌握了定时器中断的配置和编程方法。
实验3-外部中断实验报告实验三 定时中断实验一、实验目的1. 掌握51单片机外部中断的应用。
2. 掌握中断函数的写法。
3. 掌握定时器的定时方法。
4. 掌握LED 数码管的显示。
二、实验内容1. 用外部中断0测量负跳变信号的累计数,同时在LED 数码管上显示出来。
2. 用外部中断改变流水灯的方式。
3. 用定时器T1的方式2控制两个LED 以不同周期闪烁。
使用定时器T1的方式2来控制P0.0、P0.1引脚的两个LED 分别以1s 和2s 的周期闪烁。
三、实验仿真硬件图在Proteus 软件中建立如下图所示仿真模型并保存。
1. 用外部中断0测量负跳变信号的累计数,同7124536812345678R2220XTAL218XTAL119ALE 30EA31PSEN 29RST9P0.0/AD039P0.1/AD138P0.2/AD237P0.3/AD336P0.4/AD435P0.5/AD534P0.6/AD633P0.7/AD732P1.01P1.12P1.23P1.34P1.45P1.56P1.67P1.78P3.0/RXD 10P3.1/TXD 11P3.2/INT012P3.3/INT113P3.4/T014P3.7/RD17P3.6/WR 16P3.5/T115P2.7/A1528P2.0/A821P2.1/A922P2.2/A1023P2.3/A1124P2.4/A1225P2.5/A1326P2.6/A1427U1AT89C51C122pfC222pfC310ufX112MR110kD1R3220D2R4220D3R5220D4R6220D5R7220D6R8220D7R9220D8时在LED数码管上显示出来(用中断方式做计数器)。
2.用外部中断改变流水灯的方式。
中断前:开始时,P0.0~P0.7的8个灯依次点亮。
外部中断0:P0.0~P0.7的左右4个灯闪烁亮8次外部中断1:P0.0~P0.7的8个灯间隔闪烁8次改变中断优先级和保护现场,观察运行结果四、编程提示外部中断0请求______0INT,由P3.2管脚输入,通过IT0位来决定是低电平有效还是下降沿有效。
外部中断实验
外部中断实验通常是指在控制系统中测试外部事件对系统的影响。
外部中断可以是由输入设备、定时器、计数器、ADC等外部事件所触发的中断信号,当系统接收到外部中断信号时,会立刻停止当前运行的任务,执行中断服务程序,完成相应的处理后再返回原任务。
一个简单的外部中断实验可以是设计一个有按键操作的控制系统。
可以使用单片机或其他控制器,将按键连接到单片机的外部中断输入引脚,当按键被按下时,会产生外部中断信号,中断服务程序可以完成按键检测、处理等操作。
另外,也可以通过连接定时器或计数器来测试外部中断功能。
当定时器或计数器达到预设的计数值时,会产生中断信号,中断服务程序可以完成相应的处理。
在实际应用中,外部中断还可以用于实现多任务系统、数据采集、数据传输等应用。
实验3外部中断实验报告以下是为大家整理的实验3外部中断实验报告的相关范文,本文关键词为实验,外部,中断,报告,,您可以从右上方搜索框检索更多相关文章,如果您觉得有用,请继续关注我们并推荐给您的好友,您可以在综合文库中查看更多范文。
实验三定时中断实验一、实验目的1.掌握51单片机外部中断的应用。
2.掌握中断函数的写法。
3.掌握定时器的定时方法。
4.掌握LeD数码管的显示。
二、实验内容1.用外部中断0测量负跳变信号的累计数,同时在LeD数码管上显示出来。
2.用外部中断改变流水灯的方式。
3.用定时器T1的方式2控制两个LeD以不同周期闪烁。
使用定时器T1的方式2来控制p0.0、p0.1引脚的两个LeD分别以1s和2s 的周期闪烁。
三、实验仿真硬件图在proteus软件中建立如下图所示仿真模型并保存。
1.用外部中断0测量负跳变信号的累计数,同时在LeD数码管上显示出来(用中断方式做计数器)。
2.用外部中断改变流水灯的方式。
中断前:开始时,p0.0~p0.7的8个灯依次点亮。
外部中断0:p0.0~p0.7的左右4个灯闪烁亮8次外部中断1:p0.0~p0.7的8个灯间隔闪烁8次改变中断优先级和保护现场,观察运行结果四、编程提示12345678p1.0p1.1p1.2p1.3p1.4p1.5p1.6p1.7AT89c51c122pfu1x112m18 xTAL219xTAL1p0.0/AD0p0.1/AD1p0.2/AD2p0.3/AD3p0.4/AD4p0.5/AD5p 0.6/AD6p0.7/AD7p2.0/A8p2.1/A9p2.2/A10p2.3/A11p2.4/A12p2.5/A13p2 .6/A14p2.7/A15p3.0/RxDp3.1/TxDp3.2/InT0p3.3/InT1p3.4/T0p3.5/T1p3. 6/wRp3.7/RD3938373635343332212223242526272810111213141516171234567812345678c222pfD1D2D3D4D5D6D7D8R110k9RsTc310uf2930 31psenALeeAR2220R3220R4220R5220R6220R7220R8220R9220外部中断0请求InT0,由p3.2管脚输入,通过IT0位来决定是低电平有效还是下降沿有效。
一、实验目的1、学习外部中断技术的基本使用方法。
2、学习中断处理程序的编程方法。
二、实验环境1、Lab6000通用微控制器实验系统。
2、计算机,W A VE 集成调试软件。
三、实验项目用单次脉冲申请中断,在中断处理程序中对输出信号进行反转控制直流电机转、停。
四、涉及内容中断服务程序的关键是:1、保护进入中断时的状态,并在退出中断之前恢复进入时的状态。
2、必须在中断程序中设定是否允许中断重入,即设置EXO位。
3、选择相应的中断源,并设置中断屏蔽寄存器的相应位。
本实验使用了INTO中断。
一般中断程序进入时应保护PSW,ACC以及中断程序使用但非其专用的寄存器。
本实验的中断程序保护了PSW寄存器并且在退出前恢复了这个寄存器。
另外中断程序中涉及到关键数据的设置时应关中断,即设置时不允许重入。
本实验中没有涉及这种情况。
INTO(P3.2)接单次脉冲发生器。
P1.0接继电器,以查看信号反转。
主程序框图外部中断子程序框图五、实验步骤、记录和结果实验电路连线1、汇编语言操作步骤如下:(1)创建一个项目目录:shiyan51。
(2)如实验一的七.2,修改编译器为汇编语言编译器。
(3)执行“新建文件”命令,在开发环境程序窗口中按汇编语言格式输入汇编语言源程序。
将程序文件名取为shiyan51.asm保存到目录“shiyan51”。
Output equ P1.0OutBuf equ 0ljmp Startorg 3Interrupt0:push PSW ; 保护现场cpl OutBuf ; 取反LED连线连接孔1 连接孔21 继电器——输入P1.02 INT0单脉冲——3 继电器——公共端+5V4 继电器——常闭L05 继电器——常开L36 继电器——常开直流电机——至D/A开始设置初始状态设置中断控制寄存器中断允许中断入口保护现场状态位取反状态位输出恢复现场mov c, OutBufmov Output, cpop PSW ; 恢复现场retiStart:setb OutBufmov TCON, #01h ; 外部中断0下降沿触发mov IE, #81h ; 打开外部中断允许位(EX0)及总中断允许位(EA)ljmp $end(4)在“文件”下拉菜单中,执行“新建项目”命令,建立新项目。
第1篇一、实验目的1. 理解中断系统的基本概念和工作原理。
2. 掌握中断源、中断向量、中断服务程序等基本概念。
3. 学习使用Keil软件进行中断程序的编写和调试。
4. 熟悉中断在微机系统中的应用。
二、实验原理中断系统是微机系统中重要的组成部分,它允许CPU在执行程序的过程中,响应外部事件或内部事件,从而实现多任务处理。
中断系统主要包括以下几个部分:1. 中断源:产生中断请求的设备或事件,如外部设备、定时器、软件中断等。
2. 中断向量:中断服务程序的入口地址,用于CPU在响应中断时找到相应的服务程序。
3. 中断服务程序:处理中断请求的程序,完成中断处理任务。
4. 中断优先级:不同中断源的优先级不同,用于确定中断响应的顺序。
三、实验设备与软件1. 实验设备:单片机实验板、计算机、Keil软件、Proteus仿真软件。
2. 实验软件:Keil uVision4、Proteus 8.0。
四、实验内容1. 外部中断实验(1)使用外部中断0(INT0)实现按键控制LED灯的亮灭。
(2)使用外部中断1(INT1)实现按键控制LED灯的闪烁。
2. 定时器中断实验(1)使用定时器0产生1秒的定时中断,实现LED灯的闪烁。
(2)使用定时器1产生1秒的定时中断,实现按键输入的计数。
3. 软件中断实验(1)使用软件中断实现按键输入的字符显示。
(2)使用软件中断实现按键输入的字符加密显示。
五、实验步骤1. 在Keil软件中创建一个新项目,选择合适的单片机型号。
2. 根据实验要求,编写中断服务程序,设置中断向量。
3. 在Proteus软件中搭建实验电路,包括单片机、按键、LED灯等。
4. 将Keil软件编译后的程序下载到单片机中。
5. 在Proteus软件中运行仿真,观察实验结果。
六、实验结果与分析1. 外部中断实验(1)按键按下时,LED灯亮;按键松开时,LED灯灭。
(2)按键按下时,LED灯闪烁;按键松开时,LED灯停止闪烁。
第1篇一、实验目的1. 理解中断的概念和作用;2. 掌握中断系统的组成和基本工作原理;3. 熟悉中断向量表、中断服务程序和中断处理过程;4. 通过实验验证中断系统的正确性和可靠性。
二、实验原理1. 中断的概念:中断是CPU在执行程序过程中,由于某些事件的发生,暂时停止当前程序的执行,转而执行相应的事件处理程序的过程。
2. 中断系统的组成:中断系统主要由中断控制器、中断源、中断向量表、中断服务程序和CPU等组成。
3. 中断向量表:中断向量表是存储中断服务程序入口地址的表格,其中每个中断向量对应一个中断服务程序。
4. 中断服务程序:中断服务程序是处理中断事件的核心程序,用于完成中断事件的处理任务。
5. 中断处理过程:当中断事件发生时,CPU会根据中断向量表找到对应的中断服务程序入口地址,并跳转到该地址执行中断服务程序。
三、实验仪器与设备1. 实验台:微机原理实验台2. 电脑:一台3. 软件环境:Keil uVision、emu8086等四、实验步骤1. 启动实验台,打开微机原理实验台软件。
2. 在软件中设置实验参数,如中断源、中断向量等。
3. 编写中断服务程序,实现中断事件的处理任务。
4. 编写主程序,调用中断服务程序。
5. 运行实验程序,观察中断系统的运行情况。
五、实验内容1. 实验一:单级中断系统(1)设置一个外部中断源,如按键中断。
(2)编写中断服务程序,实现按键按下时的处理任务。
(3)在主程序中调用中断服务程序。
2. 实验二:多级中断系统(1)设置两个外部中断源,如按键中断和定时器中断。
(2)编写中断服务程序,实现按键中断和定时器中断的处理任务。
(3)设置中断优先级,实现多级中断。
(4)在主程序中调用中断服务程序。
3. 实验三:中断嵌套(1)设置两个外部中断源,如按键中断和定时器中断。
(2)编写中断服务程序,实现按键中断和定时器中断的处理任务。
(3)实现中断嵌套,即在定时器中断服务程序中再次触发按键中断。
实验3-外部中断实验报告实验 3 外部中断实验报告一、实验目的本次实验的主要目的是深入理解外部中断的工作原理和应用,通过实际操作掌握外部中断的配置和编程方法,提高对微控制器中断处理机制的认识和应用能力。
二、实验设备1、开发板:_____型号开发板。
2、编程软件:_____。
3、电脑:具备相应接口和操作系统。
三、实验原理外部中断是指由外部事件引起的微控制器中断。
当外部中断引脚检测到特定的电平变化(如从高电平变为低电平或从低电平变为高电平)时,微控制器会暂停当前正在执行的程序,转而执行中断服务程序(ISR)来处理外部事件。
在本次实验中,我们使用了开发板上的特定引脚作为外部中断输入引脚,并通过配置相关寄存器来设置中断触发方式、优先级等参数。
四、实验步骤1、硬件连接将外部中断源(如按键)连接到开发板的指定引脚。
确保开发板与电脑正确连接,以便进行编程和调试。
2、软件编程打开编程软件,创建新的项目。
配置微控制器的时钟、引脚等基本设置。
编写中断初始化函数,设置中断触发方式、优先级等。
编写中断服务程序,定义在中断发生时需要执行的操作。
3、编译与下载对编写好的程序进行编译,检查是否存在语法错误。
将编译成功的程序下载到开发板中。
4、实验测试按下连接的按键,观察开发板的响应,如指示灯的变化、数据的输出等。
五、实验结果与分析1、当按下按键时,开发板能够准确地响应外部中断,执行中断服务程序。
在中断服务程序中,我们设置了指示灯的状态变化,通过观察指示灯的闪烁情况,可以确认中断是否被正确触发和处理。
2、对不同的中断触发方式(如下降沿触发、上升沿触发等)进行测试,结果均符合预期。
这表明我们对中断触发方式的配置是正确的。
3、调整中断的优先级,观察不同优先级中断之间的响应顺序。
在实验中,高优先级的中断能够优先得到处理,符合微控制器中断处理的优先级机制。
六、遇到的问题及解决方法1、问题:在初次编程时,中断服务程序没有被正确执行。
解决方法:仔细检查中断初始化函数中的参数设置,确保中断触发方式、优先级等配置正确。
实验三定时中断实验一、实验目的1.掌握51单片机外部中断的应用。
2.掌握中断函数的写法。
3. 掌握定时器的定时方法。
4. 掌握LED数码管的显示。
二、实验内容1.用外部中断0测量负跳变信号的累计数,同时在LED数码管上显示出来。
2.用外部中断改变流水灯的方式。
3. 用定时器T1的方式2控制两个LED以不同周期闪烁。
使用定时器T1的方式2来控制、引脚的两个LED分别以1s和2s的周期闪烁。
三、实验仿真硬件图在Proteus软件中建立如下图所示仿真模型并保存。
1. 用外部中断0测量负跳变信号的累计数,同时在LED数码管上显示出来(用中断方式做计数器)。
2.用外部中断改变流水灯的方式。
中断前:开始时,~的8个灯依次点亮。
外部中断0:~的左右4个灯闪烁亮8次外部中断1:~的8个灯间隔闪烁8次改变中断优先级和保护现场,观察运行结果四、编程提示外部中断0请求______INT,由管脚输入,通过IT0位来决定是低电平有效还是下降沿有效。
一旦输入信号有效,即向CPU申请中断,并建立IE0中断标志。
以外部中断0为例,开放中断源采用以下语句:EA=1;掌握51单片机外部中断的应用。
2.掌握中断函数的写法。
3. 掌握中断优先级别的使用。
4. 掌握LED数码管的显示。
二、实验内容1.用外部中断0测量负跳变信号的累计数,同时在LED数码管上显示出来。
2.用外部中断改变流水灯的方式。
三、电路图(贴Protues仿真图)四、程序与注释1)程序12)程序23)程序3六、简答题1)电平触发和下降沿触发在程序中如何设置2)如何设置INT1为优先级何谓优先3)中断服务函数的interrupt后面的数字表示什么七、体会。
实验三定时中断实验一、实验目得1、掌握51单片机外部中断得应用。
2、掌握中断函数得写法。
3、掌握定时器得定时方法。
4、掌握LED数码管得显示。
二、实验内容1、用外部中断0测量负跳变信号得累计数,同时在LED数码管上显示出来。
2、用外部中断改变流水灯得方式。
3、用定时器T1得方式2控制两个LED以不同周期闪烁。
使用定时器T1得方式2来控制P0、0、P0、1引脚得两个LED分别以1s与2s得周期闪烁。
三、实验仿真硬件图在Proteus软件中建立如下图所示仿真模型并保存。
}同级自然优先级:外部中断0→定时器T0中断→外部中断1→定时器T1中断→串行口中断。
中断优先级别得设定:实验二要求:初始状态为P0、0~P0、7得8个LED显示灯依次循环点亮;外部中断0服务程序为8个LED灯,左4个,右4个闪烁8次,外部中断1服务程序8个LED灯,间隔闪烁8次。
⑴设定外部中断0为高优先级,先执行外部1中断,过程中用外部0中断来将其中断,反之不行。
注意保护现场。
⑵设定外部中断1为高优先级,先执行外部0中断,过程中用外部1中断来将其中断,反之不行。
注意保护现场。
实验三(调试下列程序,在错误行后面注明错误及改正方法):#include <reg51、h>#define ucharunsigned char;sbit D0=P1^0;sbitD1=P1^1;uchar a,b;void main(){EA=1;ET1=1;TMOD=0x20;ﻩTL1=6;ﻩTR0=1;a=0;ﻩb=0;ﻩwhile(1);}void t1()interrupt 1{ﻩa++;ﻩb++;if(a=1000){D0=~D0ﻩa=0;}if(b=4000)ﻩ{ﻩD1=~D1;ﻩﻩb=0;}写出源程序,并注释实验报告格式实验三定时中断实验学院: 专业:年级: 实验时间: 姓名: 学号: 指导教师:一、实验目得1、掌握51单片机外部中断得应用。
实验三定时中断实验
一、实验目的
1、掌握51单片机外部中断的应用。
2、掌握中断函数的写法。
3、掌握定时器的定时方法。
4、掌握LED数码管的显示。
二、实验内容
1、用外部中断0测量负跳变信号的累计数,同时在LED数码管上显示出来。
2、用外部中断改变流水灯的方式。
3、用定时器T1的方式2控制两个LED以不同周期闪烁。
使用定时器T1的方式2来控制P0、0、P0、1引脚的两个LED分别以1s与2s的周期闪烁。
三、实验仿真硬件图
在Proteus软件中建立如下图所示仿真模型并保存。
1、用外部中断0测量负跳变信号的累计数,同时在LED数码管上显示出来(用中断方式做计数器)。
2、用外部中断改变流水灯的方式。
中断前:开始时,P0、0~P0、7的8个灯依次点亮。
外部中断0:P0、0~P0、7的左右4个灯闪烁亮8次
外部中断1: P0、0~P0、7的8个灯间隔闪烁8次
改变中断优先级与保护现场,观察运行结果
四、编程提示
外部中断0请求
______
INT,由P3、2管脚输入,通过IT0位来决定就是低电平有效还就是下
降沿有效。
一旦输入信号有效,即向CPU申请中断,并建立IE0中断标志。
以外部中断0为例,开放中断源采用以下语句:
EA=1; //开放中断总允许位
EX0=1; //开放外部中断0允许位
IT0=1; //置外部中断为边沿(下边沿)触发方式中断函数结构如下:
void int_0() interrupt 0 // interrupt 0表示该函数为中断类型号0的中断函数{
}
同级自然优先级:
外部中断0→定时器T0中断→外部中断1→定时器T1中断→串行口中断。
中断优先级别的设定:
实验二要求:
初始状态为P0、0~P0、7的8个LED显示灯依次循环点亮;外部中断0服务程序为8个LED灯,左4个,右4个闪烁8次,外部中断1服务程序8个LED灯,间隔闪烁8次。
⑴设定外部中断0为高优先级,先执行外部1中断,过程中用外部0中断来将其中断,反之不行。
注意保护现场。
⑵设定外部中断1为高优先级,先执行外部0中断,过程中用外部1中断来将其中断,反之不行。
注意保护现场。
实验三(调试下列程序,在错误行后面注明错误及改正方法):
#include <reg51、h>
#define uchar unsigned char;
sbit D0=P1^0;
sbit D1=P1^1;
uchar a,b;
void main()
{
EA=1;
ET1=1;
TMOD=0x20;
TL1=6;
TR0=1;
a=0;
b=0;
while(1)
;
}
void t1() interrupt 1 {
a++;
b++;
if(a=1000)
{
D0=~D0
a=0;
}
if(b=4000)
{
D1=~D1;
b=0;
}
写出源程序,并注释
实验报告格式
实验三定时中断实验
学院: 专业: 年级: 实验时间:
姓名: 学号: 指导教师:
一、实验目的
1、掌握51单片机外部中断的应用。
2、掌握中断函数的写法。
3、掌握中断优先级别的使用。
4、掌握LED数码管的显示。
二、实验内容
1、用外部中断0测量负跳变信号的累计数,同时在LED数码管上显示出来。
2、用外部中断改变流水灯的方式。
三、电路图(贴Protues仿真图)
四、程序与注释
1)程序1
2)程序2
3)程序3
六、简答题
1)电平触发与下降沿触发在程序中如何设置?
2)如何设置INT1为优先级?何谓优先?
3)中断服务函数的interrupt后面的数字表示什么?
七、体会。