51单片机实验-实验四 多级中断实验

合集下载

51单片机中断实验连接图及程序

51单片机中断实验连接图及程序

实验五、中断实验
1、实验目的:了解单片机的中断系统,学习汇编语言中断程序的编程方法与调试技巧。

2、实验内容:单片机的INT0和INT1分别接了两个外部中断,当INT0引脚有中断时,点亮发光二极管D1,当INT1引脚有中断时,点亮发光二极管D2。

3、实验程序框图
4、实验电路图
5、实验步骤:SW1从高电平变为低电平时,点亮发光二极管D1;SW2从高电平变为低电
平时,点亮发光二极管D2。

调试程序,并运行。

观察发光二极管点亮情况。

6、思考:程序中的外部中断的触发方式是哪一种?修改程序使外部中断的触发方式改变。

7、程序清单:
ORG 0000H
AJMP MAIN
ORG 0003H
AJMP SERVE
ORG 0013H
AJMP SERVE1
MAIN: ORL P1 , #0FFH ;;灯全灭,准备读入SETB IT0; ;选择边沿触发方式
SETB EX0; ;允许INT0中断
SETB IT1; ;选择边沿触发方式SETB EX1; ;允许INT0中断
SETB EA ;;CPU开中断
AJMP $ ;;等待中断
;中断服务子程序为:
SERVE: MOV A,#0F7H
MOV P1,A
RETI
SERVE1: MOV A,#0EFH
MOV P1,A
RETI。

单片机实验四中断实验

单片机实验四中断实验

电子信息工程学系实验报告课程名称: 单片机原理及接口(应用)实验项目名称:实验四 中断系统实验 实验时间:2011.11.18班级: 姓名: 学号:一 实 验 目 的:熟悉keil 仿真软件、proteus 仿真软件的使用和单片机外部中断的使用。

了解并熟悉51单片机中中断的概念,中断处理系统的工作原理。

理解51单片机中断管理系统处理五种中断源,特别是对外部中断的设置与控制方法。

熟悉中断处理特别是外部中断处理的过程,掌握中断处理子程序的书写格式和使用方法。

二 实 验 环 境:软件:KEIL C51单片机仿真调试软件,proteus 系列仿真调试软件三 实 验 内 容 过 程 及 结 果 分 析: 3.1中断概念:在CPU 和外设交换信息时,存在着快速CPU 和慢速外设间的矛盾,机器内部有时也可能出现突发事件,为此,计算机中通常采用中断技术。

中断 CPU 和外设并行工作,当外设数据准备好( 或有某种突发事件发生)时向CPU 提出请求,CPU 暂停正在执行的程序转而为该外设服务(或处 理紧急事件),处理完毕再回到原断点继续执行原程序。

3.2中断源:引起中断的原因,中断申请的来源,中断源可以是I/O 设备、故障、时钟、调试中人为设置。

中断优先级当有多个中断源同时 向CPU 申请中断时,CPU 优先响应最需紧急处理的中断请求,处理完毕再响应优先级别较低的 ,这种预先安排的响应次序。

3.3中断的嵌套:在中断系统中,高优先级的 中断请求能中断正在进行的较低级的中断源处理,中断源3.4中断控制的有关寄存器:(1)中断的允许和禁止——中断控制寄存器IEIE 寄存器的各位对应相应的中断源,如果允许该中断源中断则该位置1,禁止中断则该位0 。

EA :中断总控开关,是CPU 是否响应中断的前提。

EA=1,CPU 开中断; EA=0, CPU 关中断。

ES : 串行口中断允许位,ES=1,允许串行口发送/接收中断;ES=0,禁止串行口中断。

实验四单片机中断优先级实验

实验四单片机中断优先级实验

实验四单片机中断优先级实验一、实验目的1.理解AT89C51单片机中断优先级和优先权。

2.用PROTEUS设计、仿真基于AT89C51单片机的中断优先级实验。

3.掌握中断编程。

4.掌握发光二极管的控制方法。

二、实验要求单片机主程序控制P0口数码管循环显示0~8;外中断(INT0)、外中断(INT1)发生时分别在P2、P1口依次显示0~8;INT1为高优先级,INT0为低优先级。

三、电路设计1.从①②RES、③④CAP、CAP-ELEC:电容、电解电容;⑤CRYSTAL:晶振;⑥BUTTON:按钮。

2.放置元器件3.放置电源和地4.连线5.元器件属性设置6.电气检测四、源程序设计、生成目标代码文件1.流程图2.源程序设计通过菜单“source→Add/Remove Source Files…”新建源程序文件:。

通过菜单“source→”,打开PROTEUS提供的文本编辑器SRCEDIT,在其中编辑源程序。

程序编辑好后,单击按钮存入文件。

3.源程序编译汇编、生成目标代码文件通过菜单“source→Build All”编译汇编源程序,生成目标代码文件。

若编译失败,可对程序进行修改调试直至汇编成功。

五、PROTEUS仿真1.加载目标代码文件2.全速仿真单击按钮,启动仿真。

(1)低优先级INT0中断主程序:当主程序运行时,单片机控制与P0口相接的数码管循环显示1~8;而P1、P2口的数码管不显示。

当前主程序控制P0口显示“8”的时刻单击“低优先级输入”按钮,触发INT0如图所示,INT0服务程序控制P2口依次显示1~8,当前显示“2”。

(2)高优先级INT1中断低优先级INT0;在上一步的基础上,即主程序被INT0中断在P0口输出“8”,而在INT0服务程序在P2口输出“2”的时刻,单击“高优先级输入”按钮,触发高优先级INT1,所在INT0被中断在显示“2”,INT1服务程序控制P1口依次显示1~8。

3.仿真调试六、思考题:1.说明单片机中共有哪几种中断,它们的默认优先级是什么2.怎样修改中断优先级例如在本实验中要使TIMER1成为优先级最高的中断,该怎么处理。

单片机实验四报告_外中断实验

单片机实验四报告_外中断实验

南昌大学实验报告学生姓名:学号:专业班级:实验类型:⃞验证⃞综合■设计⃞创新实验日期:2018.05.29 实验成绩:实验四外中断实验(一)实验目的1.掌握单片机外部中断原理;2.掌握数码管动态显示原理。

(二)设计要求1.使用外部中断0和外部中断1;2.在动态数码管上显示中断0次数,中断1用作次数清0,数码管采用74HC595驱动。

(三)实验原理1.中断所谓中断是指程序执行过程中,允许外部或内部时间通过硬件打断程序的执行,使其转向为处理外部或内部事件的中断服务程序中去,完成中断服务程序后,CPU返回继续执行被打断的程序。

如下图所示,一个完整的中断过程包括四个步骤:中断请求、中断响应、中断服务与中断返回。

当中断请求源发出中断请求时,如果中断请求被允许的话,单片机暂时中止当前正在执行的主程序,转到中断处理程序处理中断服务请求。

中断服务请求处理完后,再回到原来被中止的程序之处(断电),继续执行被中断的主程序。

如果单片机没有终端系统,单片机的大量时间可能会浪费在是否有服务请求发生的查询操作上,即不论是否有服务请求发生,都必须去查询。

因此,采用中断技术大大地提高了单片机的工作效率和2.IAP15W4K58S4单片机的中断请求IAP15W4K58S4单片机的中断系统有21个中断请求源,2个优先级,可实现二级中断服务嵌套。

由IE、IE2、INT_CLKO等特殊功能寄存器控制CPU是否相应中断请求;由中断优先级高存器IP、IP2安排各中断源的优先级;同优先级内2个以中断同时提出中断请求时,由内部的查询逻辑确定其响应次序。

中断请求源中的外部中断0(INT0)和外部中断1(INT1)详述如下:(1)外部中断0(INT0):中断请求信号由P3.2引脚输入。

通过IT0来设置中断请求的触发方式。

当IT0为“1”时,外部中断0为下降沿触发;当IT0为“0”时,无论是上升沿还是下降沿,都会引发外部中断0。

一旦输入信号有效,则置位IE0标志,向CPU申请中断。

单片机中断实验实训报告

单片机中断实验实训报告

一、实验背景随着电子技术的飞速发展,单片机因其体积小、成本低、功能强大等优点,在各个领域得到了广泛应用。

中断技术是单片机设计中非常重要的一部分,它允许单片机在执行程序的过程中,能够及时响应外部事件,从而提高系统的实时性和效率。

本实训旨在通过实验,加深对单片机中断系统的理解,掌握中断系统的使用方法,并学会在实际应用中灵活运用中断技术。

二、实验目的1. 熟悉单片机中断系统的基本概念和原理。

2. 掌握中断源、中断优先级、中断服务程序等基本概念。

3. 学会使用单片机的中断系统实现实时响应外部事件。

4. 培养动手实践能力和问题解决能力。

三、实验器材1. 单片机实验板2. 示波器3. 电源4. 连接线5. 逻辑分析仪(可选)四、实验内容1. 实验一:外部中断实验(1)实验目的:验证外部中断功能,实现按键控制LED灯的点亮和熄灭。

(2)实验步骤:a. 将外部中断0(INT0)引脚连接到按键,按键按下时产生低电平信号。

b. 编写中断服务程序,实现按键按下时点亮LED灯,按键释放时熄灭LED灯。

c. 编译程序,下载到单片机实验板上。

d. 测试实验效果,观察LED灯的点亮和熄灭情况。

2. 实验二:定时器中断实验(1)实验目的:验证定时器中断功能,实现LED灯的定时闪烁。

(2)实验步骤:a. 配置定时器T0为模式1,设置定时器初值,使定时器溢出时间为1秒。

b. 开启定时器中断,编写定时器中断服务程序,实现LED灯的定时闪烁。

c. 编译程序,下载到单片机实验板上。

d. 测试实验效果,观察LED灯的闪烁情况。

3. 实验三:中断嵌套实验(1)实验目的:验证中断嵌套功能,实现定时器中断和外部中断的嵌套。

(2)实验步骤:a. 配置定时器T0为模式1,设置定时器初值,使定时器溢出时间为1秒。

b. 开启定时器中断和外部中断,设置中断优先级。

c. 编写定时器中断服务程序和外部中断服务程序,实现中断嵌套。

d. 编译程序,下载到单片机实验板上。

单片机实验报告四 外部中断实验

单片机实验报告四 外部中断实验

南昌大学实验报告学生姓名:学号:专业班级:实验类型:⃞验证⃞综合⃞设计⃞创新实验日期:2019. 4.30 实验成绩:实验四外部中断实验(一)实验目的1.掌握单片机外部中断原理;2.掌握数码管动态显示原理。

(二)设计要求1.使用外部中断0和外部中断1;2.在动态数码管上显示中断0次数,中断1用作次数清0,数码管采用74HC595驱动。

(三)实验原理1.中断:计算机执行主程序过程中,由于临时重要事件,需要暂停当前程序的运行,转到中断服务程序去处理临时事件,处理完后又返回原程序的断点处继续运行。

图1STC15单片机的中断系统包含21个中断源,2个中断优先级,二级中断服务嵌套,中断允许寄存器IE、IE2和INT_CLKO控制中断允许。

中断优先级寄存器IP、IP2管理中断优先级。

同优先级中断同时提出中断请求时,由内部的查询逻辑确定响应次序。

中断请求源中的外部中断0(INT0)和外部中断1(INT1)详述如下:1)外部中断0(INT0):中断信号由P3.2引脚输入。

通过IT0来设置中断请求的触发方式。

当IT0为“1”时,外部中断0为下降沿触发;当IT0为“0”时,无论是上升沿还是下降沿,都会引发外部中断0.一旦输入信号有效,则置位IE0标志,向CPU申请终端。

2)外部中断1(INT1):中断信号由P3.3引脚输入。

通过IT1来设置中断请求的触发方式。

当IT1为“1”时,外部中断0为下降沿触发;当IT1为“0”时,无论是上升沿还是下降沿,都会引发外部中断0.一旦输入信号有效,则置位IE0标志,向CPU申请终端。

2.LED数码管是显示数字和字母的常见显示器件,由8个发光二极管构成,结构如图2:图2段码:a、b、c、d、e、f、g、dp段的二进制代码(a为最低位),控制显示字型。

位选:公共端com,控制数码管是否显示。

3.数码管动态显示原理:任何时刻只有一个数码管处于显示状态,单片机采用“扫描”方式控制各个数码管轮流显示,通常将所有数码管段码线的相应段并联在一起,由一个8位I/O 端口控制。

实验四-MCS-51单片机外部中断实验

实验四-MCS-51单片机外部中断实验

实验四-MCS-51单片机外部中断实验实验目的:1. 学习MCS-51单片机的外部中断原理和使用方法;2. 掌握如何通过硬件中断和软件中断实现MCS-51单片机的响应机制;3. 了解MCS-51单片机外部中断的实际应用。

实验器材:MCS-51单片机开发板、按键开关、调试器。

实验原理:MCS-51单片机通过INT0和INT1两个硬件中断引脚实现外部中断。

当INT0外部中断线检测到低电平信号时,中断向量为0x0003;当INT1外部中断线检测到低电平信号时,中断向量为0x0013。

通过配置中断控制寄存器IE和TCON,可以实现对外部中断的使能、触发方式和优先级等的控制。

MCS-51单片机还可以通过软件方式实现外部中断,即通过软件方式扫描外部信号,并在检测到信号发生变化时触发相应的中断处理程序。

实现软件中断的方法是使用定时器功能,通过定时器中断触发中断服务程序,该程序扫描外部信号,并根据需要触发软件中断。

实验步骤:1. 将开发板上的按键开关连接到开发板的P3.2引脚。

按键开关按下时,P3.2引脚被拉低,可以触发外部中断。

2. 打开Keil μVision5软件,新建工程,选择芯片型号为STC89C52,保存并命名为“Exp4”。

3. 在主函数中声明中断函数,并在中断函数中打印提示信息。

4. 在主函数中初始化中断控制寄存器IE和TCON,开启INT0外部中断,并将中断优先级设置为最高。

5. 在主函数中使用无限循环,来保持程序一直运行,并定时打印提示信息,以验证程序是否正常运行。

6. 烧录程序到开发板上,先在开发板上不按下按键,观察是否正常打印提示信息。

然后按下按键,观察是否触发外部中断,进入中断函数并打印提示信息。

实验代码:#include<STC89C52.h>#include<stdio.h>// 定义外部中断0的中断服务函数void Interrupt0() interrupt 0{printf("External interrupt 0 has occured!\n");}// 打印提示信息printf("Program is running...\n");while(1){// 定时打印提示信息printf("Hello!\n");delay_ms(1000);}}注意事项:1. 写中断程序时,一定要注意将中断函数的声明放在程序开头,否则可能会出现中断无法触发的情况;2. 在使用中断相关功能的时候,务必仔细阅读数据手册中的相关章节,以确保正确使用并且避免出现不必要的错误;3. 在进行外部中断实验的时候,可以使用按键开关、光敏电阻等外部器件来模拟外部信号的变化,以测试程序的正确性。

单片机的中断实验报告

单片机的中断实验报告

单片机的中断实验报告单片机的中断实验报告引言:单片机是现代电子技术中的一种重要组成部分,广泛应用于各种电子设备中。

中断是单片机中的一种重要功能,能够提高系统的响应速度和实时性。

本实验旨在通过对单片机的中断功能进行实验,深入了解中断的原理和应用。

一、实验目的本实验旨在通过对单片机的中断功能进行实验,掌握中断的原理和应用,提高对单片机的理解和应用能力。

二、实验器材和材料1. 单片机开发板2. 电脑3. USB数据线4. LED灯5. 电阻、电容等元件三、实验原理中断是单片机中的一种重要功能,当某个事件发生时,单片机可以立即中断当前程序的执行,转而执行中断服务程序,处理该事件。

中断可以分为外部中断和内部中断两种类型。

外部中断由外部设备触发,如按键、传感器等;内部中断由单片机内部的某个模块触发,如定时器溢出、串口接收等。

四、实验步骤1. 连接单片机开发板和电脑,并通过USB数据线进行通信。

2. 在开发环境中编写中断服务程序,实现对外部中断的响应。

3. 将LED灯连接到开发板的某个IO口,并设置为输入模式。

4. 在主程序中配置外部中断的触发条件和中断服务程序。

5. 运行程序,触发外部中断,观察LED灯的亮灭情况。

五、实验结果与分析经过实验,我们成功实现了对外部中断的响应,并观察到LED灯在中断触发时的亮灭情况。

通过实验结果的分析,我们可以得出以下结论:1. 外部中断可以有效地提高系统的响应速度和实时性,特别适用于需要及时处理外部事件的应用场景。

2. 中断服务程序的编写和配置是实现中断功能的关键,需要充分理解中断的原理和编程方法。

3. 在实际应用中,需要根据具体的需求和硬件条件来选择合适的中断触发条件和中断服务程序。

六、实验总结通过本次实验,我们深入了解了单片机的中断功能,并通过实际操作掌握了中断的原理和应用方法。

中断作为一种重要的系统功能,可以提高系统的响应速度和实时性,广泛应用于各种电子设备中。

在今后的学习和工作中,我们将进一步探索中断的应用领域,并不断提高自己的单片机编程能力。

多级外部中断实验报告

多级外部中断实验报告

一、实验目的1. 理解多级外部中断的工作原理和机制。

2. 掌握在单片机系统中配置和实现多级外部中断的方法。

3. 通过实验验证多级外部中断的响应和处理过程。

4. 提高对中断系统在实际应用中的理解和应用能力。

二、实验原理多级外部中断是指在一个系统中,根据中断的优先级,将多个外部中断源分配到不同的优先级级别,并按照优先级顺序进行响应和处理。

在多级外部中断系统中,当多个中断源同时产生中断请求时,系统会根据优先级顺序依次响应,优先处理优先级较高的中断。

三、实验环境1. 单片机开发板:选用STM32F103系列单片机开发板。

2. 软件工具:Keil uVision5、STM32CubeIDE。

3. 实验器材:按键、LED灯、连接线等。

四、实验步骤1. 搭建实验电路按照实验要求,连接按键和LED灯到单片机的相应引脚。

具体连接方式如下:- 按键1连接到单片机的外部中断0(EXTI0)引脚。

- 按键2连接到单片机的外部中断1(EXTI1)引脚。

- LED灯连接到单片机的GPIO引脚。

2. 编写程序使用Keil uVision5或STM32CubeIDE编写程序,实现以下功能:- 配置外部中断0和外部中断1的优先级。

- 编写中断服务程序,分别处理外部中断0和外部中断1。

- 在中断服务程序中,根据优先级顺序控制LED灯的亮灭。

3. 编译和下载程序使用Keil uVision5或STM32CubeIDE编译程序,将生成的hex文件下载到单片机中。

4. 实验验证- 触发按键1,观察LED灯1的状态变化。

- 触发按键2,观察LED灯2的状态变化。

- 同时触发按键1和按键2,观察LED灯的状态变化,验证优先级顺序。

五、实验结果与分析1. 当仅触发按键1时,LED灯1亮起,LED灯2熄灭,验证外部中断0正常工作。

2. 当仅触发按键2时,LED灯2亮起,LED灯1熄灭,验证外部中断1正常工作。

3. 当同时触发按键1和按键2时,LED灯1亮起,LED灯2熄灭,验证多级外部中断的优先级顺序。

实验四 单片机的中断

实验四 单片机的中断

实验四单片机的I/O口与外部中断
一、实验内容
51单片机的外部中断1引脚接开关K1,外部中断引脚0接开关K0,P1.0~P1.7分别接八个发光二极管,开机后只有一个发光二极管从左到右每隔0.5秒循环移动点亮。

当K1电平产生电平跳变时,二极管的循环移动发光被停止,取而代之的是黄色二极管5秒间的闪烁,闪烁频率为0.5秒,5秒钟过后,八个发光二极管恢复到原来的循环发光状态。

当K0电平为低电平时,无论是二极管处于循环移动发光状态,还是处于黄色二极管的5秒间闪烁状态,都应被强制中止,取而代之的是红色二极管以0.25秒间隔持续闪烁,当K0电平升为高电平时,发光二极管恢复到原来的状态。

实验程序把外部中断0分为高优先级与低优先级两种步骤(其它为低优先级)进行,仔细观察两种情况的不同。

二、实验目的
1.掌握单片机中断原理以及编程使用方法。

2.理解下降沿触发中断和电平负跳变触发中断的区别。

3.掌握中断优先级的应用方法。

三、实验说明
1.使用延时(或定时器)产生0.5秒和0.25秒时间,以下的流程图是采用定时器产生所需要的定时时间。

2.二极管发光的循环移动处理在主程序中进行。

3.黄色二极管的闪烁在中断程序中进行。

4.红色二极管的闪烁处理的地方没有特定要求。

四、实验框图
主程序流程图
定时中断的流程图。

单片机实验四报告外中断实验

单片机实验四报告外中断实验

大学实验报告学生:学号:专业班级:实验类型:⃞验证⃞综合■设计⃞创新实验日期:2018.05.29实验成绩:实验四外中断实验(一)实验目的1.掌握单片机外部中断原理;2.掌握数码管动态显示原理。

(二)设计要求1.使用外部中断0和外部中断1;2.在动态数码管上显示中断0次数,中断1用作次数清0,数码管采用74HC595驱动。

(三)实验原理1.中断所谓中断是指程序执行过程中,允许外部或部时间通过硬件打断程序的执行,使其转向为处理外部或部事件的中断服务程序中去,完成中断服务程序后,CPU返回继续执行被打断的程序。

如下图所示,一个完整的中断过程包括四个步骤:中断请求、中断响应、中断服务与中断返回。

当中断请求源发出中断请求时,如果中断请求被允许的话,单片机暂时中止当前正在执行的主程序,转到中断处理程序处理中断服务请求。

中断服务请求处理完后,再回到原来被中止的程序之处(断电),继续执行被中断的主程序。

如果单片机没有终端系统,单片机的大量时间可能会浪费在是否有服务请求发生的查询操作上,即不论是否有服务请求发生,都必须去查询。

因此,采用中断技术大提高了单片机的工作效率和实时性。

2.IAP15W4K58S4单片机的中断请求IAP15W4K58S4单片机的中断系统有21个中断请求源,2个优先级,可实现二级中断服务嵌套。

由IE、IE2、INT_CLKO等特殊功能寄存器控制CPU是否相应中断请求;由中断优先级高存器IP、IP2安排各中断源的优先级;同优先级2个以中断同时提出中断请求时,由部的查询逻辑确定其响应次序。

中断请求源中的外部中断0(INT0)和外部中断1(INT1)详述如下:(1)外部中断0(INT0):中断请求信号由P3.2引脚输入。

通过IT0来设置中断请求的触发方式。

当IT0为“1”时,外部中断0为下降沿触发;当IT0为“0”时,无论是上升沿还是下降沿,都会引发外部中断0。

一旦输入信号有效,则置位IE0标志,向CPU申请中断。

实验四中断系统实验报告格式(PDF)

实验四中断系统实验报告格式(PDF)

实验四中断系统一、实验目的1.掌握单片机中断系统的结构;2.掌握单片机的5个中断源、中断过程及中断源编号;3.掌握C51中断服务函数的编写。

二、实验设备PC机(含Proteus和Keil软件)三、实验原理中断是一个过程,当CPU在处理某件事情时,外部又发生了另一紧急事件,请求CPU 暂停当前的工作而去迅速处理该紧急事件。

处理结束后,再回到原来被中断的地方,继续原来的工作。

引起中断的原因或发出中断请求的来源,称为中断源。

MCS-51单片机有5个中断源,分为2个中断优先级,每个中断源的优先级都可以由软件来设定,可实现两级中断嵌套。

5个中断源分别是:1.外部中断请求源:即外部中断0和1,由外部引脚INT0(P3.2)/INT1(P3.3)引入。

2.内部中断请求源TF0/TF1:定时/计数器T0/T1的溢出中断标志。

3.内部中断请求源TI、RI:串行口发送、接收中断标志。

MCS-51单片机有4个与中断有关的特殊功能寄存器:中断允许寄存器IE、中断优先级寄存器IP、TCON、SCON(TCON、SCON的相关位作中断源的标志位)。

在TCON中有四位是与外部中断有关的。

IT0/IT1:INT0/INT1触发方式控制位,可由软件进和置位和复位,IT0/IT1,INT0/INT1为低电平触发方式,IT0/IT1,INT0/INT1为负跳变触发方式。

IE0/IE1:INT0/INT1中断请求标志位。

当有外部的中断请求时,该就会置1(由硬件来完成),在CPU 响应中断后,由硬件将IE0/IE1清0。

四、实验内容1.编程实现:8个LED一直熄灭,每按一次按键,LED闪烁6次。

2.编程实现:8个LED一直闪烁,每按一次按键,8个LED流水一次。

3.编程实现:按一次单脉冲,8个LED闪烁;再按一次按键,8个LED流水;以此循环往复。

硬件连接:外设单片机引脚8个LED P1按键外部0中断P3.2五、实验结果1.画出单片机与8个LED、按键的连接电路原理图。

51单片机外部中断实验报告

51单片机外部中断实验报告

51单片机外部中断实验实验报告要求:1)整理本实验涉及的程序,将它们按正确的格式详细书写在实验报告纸上。

1.无中断时发光让发光二极管从左到右依次点亮,有外部中断请求时,4位数码管从0000开始加1显示(加到9999后复位为0000),同时蜂鸣器报警。

#include<reg51.h>#include<intrins.h>int n1,n2;sbit beep=P3^5;chartable[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x8 8,0x83,0xc6,0xa1,0x86,0x8e};void delay(int x){int i,j;for(i=0;i<x;i++)for(j=0;j<200;j++);}void main(){EA=1;EX0=1;IT0=0;EX1=1;IT1=1;PX1=1;while(1);}void int0() interrupt 0 {beep=0;P2=0xfe;delay(200);for(n1=8;n1>0;n1--) {P2=_crol_(P2,1); delay(200);}}void int1() interrupt 2 {P0=0x00;for(n2=0;n2<16;n2++) {P1=table[n2];delay(200);}}2.设置中断优先级寄存器,当有外部中断0请求中断时,中断程序执行发光二极管程序,在此过程中,外部中断1也有中断请求,外部中断0的中断程序将被中断去执行外部中断1的中断程序(数码管加1显示程序)。

C语言程序#include<reg51.h>#include<intrins.h>int n1,n2;chartable[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e};void delay(int x){int i,j;for(i=0;i<x;i++)for(j=0;j<200;j++);}void main(){EA=1;EX0=1;IT0=1;P2=0xfe;delay(200);for(n1=8;n1>0;n1--) {P2=_crol_(P2,1); delay(200);}}void int0() interrupt 0 {EX0=1;P0=0x00;for(n2=0;n2<16;n2++) {P1=table[n2];delay(200);}EX0=0;}汇编程序:ORG 0000HAJMP MAINORG 0003HLJMP EXT0_INTORG 0013HLJMP EXT1_INTORG 0100H MAIN: SETB EASETB EX0SETB EX1SETB PX1CLR IT0CLR IT1AJMP $EXT0_INT: MOV P2,#0FEHMOV R4,#08HL1: ACALL DELAYMOV A,P2RL AMOV P2,ADJNZ R4,L1RETIEXT1_INT: MOV P1,#0F0HMOV R5,#00HMOV DPTR ,#TABL4: MOV A,R5MOVC A,@A+DPTRMOV P0,AACALL DELAYINC R5CJNE R5,#0AH,L4RETITAB: DB 0C0H ,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H DELAY: MOV R6,#0FFHL5: MOV R7,#0FFHL6: NOPNOPDJNZ R7,L6DJNZ R6,L5RETEND(2)写出实验结果、实验收获与对本实验改进的意见。

微机原理_中断实验报告(3篇)

微机原理_中断实验报告(3篇)

第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.当单片机的INT0端出现负脉冲时,进入相应的中断服务程序,P1口做输出口,接8只发光二极管,通过程序控制发光二极管依次点亮。

2.选择外部中断0(P3.2)接按键INTO到地,按下出现负脉冲时,进入相应的中断服务程序,在中断服务程序中,数码管显示加1,在0-9之间循环。

二、实验目的1、学习外部中断技术的基本使用方法。

2、学习中断处理程序的编程方法。

三、实验原理(中断原理部分参考教材填写)本实验中断处理程序的应用,最主要的地方是如何保护进入中断前的状态,使得中断程序执行完毕后能回到交通灯中断前的状态。

要保护的地方,除了累加器ACC、标志寄存器PSW外,还要注意。

一是主程序中的延时程序和中断处理程序中的延时程序不能混用,本实验中,主程序延时用的寄存器和中断延时用的寄存器应不相同。

四、实验电路(参考学习板说明书Page11)五、接线方式(参考学习板说明书Page11)P1口接发光二极管的L1—L8;单脉冲输出端“”接INI0,即接89C51的P3.2管脚。

六、参考程序程序一、ORG 0030Htmpdate: DB 01H,02H,04H,08H,10H,20H,40H,80H /*定义常量做为输出*/ORG 0000HLJMP MAINORG 0003HLJMP INTMAIN: SETB EA /*首先开启总中断*/SETB EX0 /*开启外部中断0 */SETB IT0 /* 设置成下降沿触发方式*/MOV R7,#8MOV DPTR,#TMPDATEL0: SJMP L0 //等待中断INT: DJNZ R7,L1 /*外部中断0 每按一次主板上的"INT0"键,中断响应,调用该函数,我们从P1口输出点亮发光二极管*/MOV R7,#8L1: MOV A,R7MOVC A,@A+DPTRCPL AMOV P1,ARETIEND程序二、/***************************************************************功能:按下按键,数码管加1,用中断的方法作者:txl时间:2009-04版本:V1.0***************************************************************/#include<reg52.h>#define uint unsigned int#define uchar unsigned charsbit wei1=P2^0;sbit key1=P3^2;uchar code table[]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90,0x88,0x83,0xC6,0xA1,0x86,0x8E};//共阳数码管码表//全局变量uchar num;//函数声明void delay(uint z);void led_show(uchar temp);void main(){num=0;// IT0=1; //中断以下降沿方式触发IT0=0; //中断以低电平方式触发EX0=1; //允许外部中断0中断EA=1; //总中断开wei1=0;while(1){led_show(num); //显示}}/*************************************************************** 功能:外部中断0入口***************************************************************/ void EX0_Int() interrupt 0{EX0 = 0; //关中断num++;if(num==10)num=0;while(!key1);//消除抖动delay(5);while(!key1);// for(;!key1;); //等待放开EX0 = 1; //开中断}void delay(uint z){uint x,y;for(x=z;x>0;x--)for(y=110;y>0;y--);}void led_show(uchar temp){P0=table[temp];delay(5);}扩展程序三、#include <AT89X52.H> //包含头文件sbit led=P1^0;#define shuma P0 //数码管数据口sbit LED_0=P2^0; //定义数码管4个控制位sbit LED_1=P2^1;sbit LED_2=P2^2;sbit LED_3=P2^3;unsigned char m;unsigned int code ton[7];void display(unsigned char d1,unsigned char d2,unsigned char d3,unsigned char d4);/*=====0-9=====A-G=====*/unsigned char a[16]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e};//共阳极数码管的段码0 1 2 3 4 5 6 7 8 9 A B C D E F//定时初值计算方法:以5ms为例,5ms=5000us,0xffff-5000/1.085即为TH和TL的值void int1() interrupt 3 //T1中断,时间是5ms{TR1=0; //关中断TH1=0xed; //装定时器初值实现5ms定时TL1=0xff;ET1=1; //开中断TR1=1;display(1,2,3,4); //在中断里显示数字}void main( void ){m=1;TMOD=0x10; //设置为T1定时器TH1=0xed; //装定时器初值TL1=0xff;TR1=1; //开中断ET1=1;EA=1;while(1){}}void display(unsigned char d1,unsigned char d2,unsigned char d3,unsigned char d4) {if(m==1) //每进入一次中断显示1位,用变量m作为显示位标识{LED_0=0; //使能该数码管控制位LED_1=LED_2=LED_3=1; //其他控制位无效shuma=a[d1]; //按照数据点亮该数码管}if(m==2) //第二次中断显示第二位{LED_1=0;LED_0=LED_2=LED_3=1;shuma=a[d2];}if(m==3) //第三次中断显示第三位{LED_2=0;LED_1=LED_0=LED_3=1;shuma=a[d3];}if(m==4) //第四次中断显示第四位{LED_3=0;LED_1=LED_2=LED_0=1;shuma=a[d4];}m++; //数码管位循环扫描if(m>=5) //如果4次中断显示完成,则回到第一重新显示m=1;}。

单片机实验报告 中断

单片机实验报告 中断

单片机实验报告中断单片机实验报告:中断引言:单片机是一种集成电路,具有微处理器、存储器和输入输出接口等功能。

在嵌入式系统中,单片机常常被用于控制和管理各种设备。

而中断是单片机中一种重要的机制,它可以在特定条件下打断程序的正常执行,执行一段特定的代码,然后返回到原来的程序中。

本文将介绍中断的概念、分类以及在单片机实验中的应用。

一、中断的概念中断是一种硬件或软件生成的信号,用于打断正在执行的程序。

当中断信号发生时,单片机会立即停止当前的任务,转而执行中断服务程序。

中断可以提高程序的响应速度和效率,使单片机能够及时处理紧急事件。

二、中断的分类中断可以分为外部中断和内部中断两种类型。

1. 外部中断外部中断是由外部设备产生的中断信号。

当外部设备需要单片机的处理时,会发送中断请求信号。

单片机在接收到中断请求后,会立即停止当前任务,转而执行与中断相关的程序。

外部中断常用于处理外部设备的输入信号,如按键、传感器等。

2. 内部中断内部中断是由单片机内部产生的中断信号。

内部中断通常由单片机的一些特定事件触发,如定时器溢出、串口接收完成等。

内部中断常用于周期性的任务处理和数据通信等。

三、中断的实验应用在单片机实验中,中断被广泛应用于各种场景,下面将介绍两个实验应用的例子。

1. 外部中断实验假设我们需要设计一个按键控制LED灯的实验。

当按下按键时,LED灯亮起;当松开按键时,LED灯熄灭。

这个实验可以使用外部中断来实现。

首先,我们需要将按键连接到单片机的外部中断引脚。

当按键按下时,外部中断引脚会产生一个中断请求信号。

单片机接收到中断请求后,会执行相应的中断服务程序。

在中断服务程序中,我们可以控制LED灯的亮灭。

通过这个实验,我们可以学习到如何使用外部中断来处理外部设备的输入信号,并且了解到中断的响应速度和效率优势。

2. 内部中断实验假设我们需要设计一个定时器实验,要求每隔一段时间点亮一次LED灯。

这个实验可以使用内部中断来实现。

51单片机中断系统学习和实验

51单片机中断系统学习和实验

51单片机中断系统学习和实验丁炳亮通过几个实验代码来学习和理解教科书上关于中断的讲解,因为中断在单片机学习中是一个非常重要的内容,很多代码实现都要使用到中断。

之前在使用外部中断中遇到外部下降沿触发方式如果用按键触发会发生两次中断,这个问题其实很好解释的通但是想的过程中就冒出了很多新问题,下面就是针对自己的理解分析这些问题的。

实验一:测试在没有开启外部中断允许的情况下,如果有外部低电平或下降沿触发,外部中断标志位是否会置位实验现象:电平触发模式没有开中断时,只有低电平存在才会置位IE0标志位,当电平变高后IE0标志位自动清零。

下降沿触发模式没有开中断时,触发一次就使IE0标志位一直置位,不会自动清零。

如果下降沿触发开中断而没有中断函数结果和没开中断一样,只有开中断且又有中断函数IE0被置位马上就被清零(串口持续输出IE0=0)。

结论及解释:首先了解下外部触发的两种方式的区别。

当IT0=0 时,INT0为电平触发方式。

CPU 在每个机器周期的S5P2 取样INT0引脚电平,当取样到低电平时,置IE0=1表示INT0向CPU 请求中断;取样到高电平时,将IE0 清0。

必须注意,在电平触发方式下,CPU 响应中断时,不能自动清除IE0 标志。

也就是说,IE0 状态完全由INT0状态决定。

所以,在中断返回前必须撤除INT0引脚的低电平。

当IT0=1 时,INT0为边沿触发方式(下降沿有效)。

CPU 在每个机器周期的S5P2 取样INT0引脚电平,如果在连续的两个机器周期检测到INT0引脚由高电平变为低电平,即第一个周期取样到INT0=1,第二个周期取样到INT0=0,则置IE0=1,产生中断请求。

在边沿触发方式下,CPU 响应中断时,能由硬件自动清除IE0 标志。

注意,为保证CPU 能检测到负跳变,INT0的高、低电平时间至少应保持1 个机器周期。

硬件必须在CPU响应中断后才自动清零IE0标志,CPU响应中断需要满足三个条件。

实验四 80C51单片机外中断实验

实验四 80C51单片机外中断实验

实验四80C51单片机外中断实验一实验目的:了解8051系列单片机的外中断基本工作原理。

掌握8051系列单片机外中断的用法。

二实验原理:中断是在执行正常程序的过程中转去执行临时的任务,此时CPU必须暂停现行的程序而转去处理更加紧急的事件,在处理完毕之后方可返回执行原来的程序。

在8051的中断里面,要涉及到一系列的诸如保护现场,中断响应,现场恢复,中断嵌套以及优先级等问题。

8051有5个中断源,它们分别是两个外部中断请求INT0(P3.2)和INT1(P3.3)、两个片内定时器/计数器溢出中断TF0和TF1,一个片内串行口中断请求TI或RI,这几个中断源由TCON和SCON两个特殊功能寄存器进行控制(如图4-1所示):表4-1TI是8051串行口的发送中断标志。

当串行口发送完一帧数据后请求中断由硬件置位,而清零必须由软件来完成。

RI是串行口接收中断标志。

当串行口接收完一帧数据后请求中断由硬件置位,也是由软件来清零。

8051的对中断的开放和屏蔽是由中断允许寄存器IE控制来实现的,IE的结构格式如图4-2所示。

其中任何一个位置一就是将相应的中断源打开,反之,为0则关闭。

这里EA为CPU的中断控制位,在使用任何一个中断源之前都必须将CPU的中断置1。

表4-28051有两个中断优先级,即高优先级和低优先级。

每个中断源都可设置为高或低中断优先级。

所以中断嵌套有两级,嵌套原则为:正在执行的中断服务程序可以被更高级的中断请求打断,但不能被同一级别或是更低级的中断请求中断。

两级中断通过中断优先级寄存器IP来设置。

IP的格式如图4-3所示,字节地址是B8H。

表4-38051CPU在每一个机器周期顺序检查每一个中断源,在机器周期的S6按优先级处理所有被激活的中断请求。

中断响应的主要内容就是由硬件自动形成转向与该中断源对应的服务程序入口地址。

这些中断源的服务程序入口地址如图4-4所示。

这里要注意的是,在中断服务子程序中,关键字interrupt后面的KeilC中断编号一定要正确。

单片机中断实验

单片机中断实验

成绩实验报告实验名称中断实验实验班级姓名学号(后两位)指导教师实验日期实验四中断实验一、实验目的1、掌握单片机系统中断的原理及使用方法。

2、理解键盘扫描和去抖动的原理。

3、掌握键盘扫描实现方法。

二、实验原理(一)、中断知识在计算机系统中,中断可以由各种硬件设备产生,以便请求服务或报告故障等。

此外,中断也可由处理器自身产生,例如,程序错误或对操作系统的请求做出响应等。

89C51 的中断系统具有5 个中断源,即2 个外部中断、2 个定时器中断和1 个串行中断。

(二)、按键的识别过程1、键盘扫描,判定是否有“闭合键”;2、按键识别,确认“闭合键”的行列位置;3、产生键码,排除多键、串键(复按)及去抖动。

如上图所示,则键盘扫描过程如下:1、P1 口输出“0F(F0)”;P1 口低(高)4 位读入数据时:全“1”,表示无按键按下,否则,表示有按键按下。

2、进一步确认行列号:P1 口输出“0F”,确认P1.X 输入为“0”;P1 口输出“F0”,确认P1.Y 输入为“0”;则按下键的坐标就是(X,Y)(三)、按键抖动抖动的原因:目前大部分按键或键盘都是利用机械触电的合、断作用。

机械触点在闭合及断开瞬间由于弹性作用的影响,在闭合及断开瞬间均有抖动过程,从而使电压信号也出现抖动,抖动时间的长短与开关的机械特性有关,一般为5~10ms。

而单片机对键盘扫描一次仅需几百微妙。

这样,将会对键盘扫描产生误判。

为了保证单片机对按键闭合仅作一次输入处理,必须去除抖动的影响。

去抖动的方法:1、外加硬件电路,用RS 触发器或单稳态电路构成的去抖动电路,或键盘扩展专用芯片。

2、在检测按键按下时,执行约10ms 的延时程序后(避开抖动前沿区域),再确认按键是否仍然保持闭合状态。

二、实验内容1、见图一。

假设单片机晶振频率设定为6MHz。

用中断方式来完成以下要求,且通过虚拟示波器观看波形。

A、使用定时器1 以方式0 产生周期为500us 的等宽方波连续脉冲,并由P1.0 输出。

单片机原理 中断实验-单片机原理-实验报告

单片机原理 中断实验-单片机原理-实验报告

梅花给了我启迪作文梅花给了我启迪作文在日常学习、工作或生活中,大家总少不了接触作文吧,借助作文人们可以反映客观事物、表达思想感情、传递知识信息。

一篇什么样的作文才能称之为优秀作文呢?下面是小编帮大家整理的梅花给了我启迪作文,欢迎阅读与收藏。

梅花给了我启迪作文1衣袖拂起,梅香依旧。

一题记腊月,本该除旧迎新。

我在飞扬的大雪中徘徊着,踌躇着,调帐着。

张张日历被时间无情地扯下,我不甘,我不愿,我不忍接受时光太匆匆。

纵观一年,我碌碌无为,如行尸走肉般行,走在人流中。

站在这一年的尽头,我停住了脚步,不敢向前。

一片雪花钻进了我的脖子里,我缩了缩结慢地挪动着脚步。

好香股股清香扑面而来,沁人心脾。

啊,是相花开了!走近一点,再近一点。

我看到了梅花任动的枝干上盖着厚厚的白棉液。

但那一朵花,你悄悄地魏出头来,它们终放着,红形的,如初生要儿的面题,会领的花照,如果颜晶莹剔透的宝石。

它们绽放着,有种勇往直前的气概。

我贪婪地呼吸着这清香的气息,任它萦绕在我的四周。

风愈烈了,它们好像什么都不怕似的,在寒风和暴雪中仍抬着头,望着远。

可前几天的它们,还不是这样的。

那时它们还像一个个未满月的娃娃,用花瓣把自己裹得严严实实的,娇小、玲珑。

绝不同于今日的或思,或语,或舞,或醉。

原来它们每日都绽放着不—样的色彩!然而,无论梅花以哪种姿态报以生命,我都为之深深陶。

那我呢?不论昨天、今天还是明天,不都可以有所不同吗?梅,可以用每日一点一点的成熟点缀自己短暂的'生命,我又为何不可?尽管昨天逝去了,但今天还在,明天还会来。

我难道要因不满昨天而耽搁了今天和明天?我难道要错过之后还错?不,我要像梅花般凌寒独自开;我要接受寒风的洗礼、暴雪的磨炼;我要努力,我要改变自己;我要让生命中的每分每一秒,都可以焕发出与从前不同的光彩!在这炽热的心的驱使下,我不觉得加快了脚步。

回到家,拂拂衣袖,梅花香气依然。

梅花给了我启迪作文2衣袖拂起;梅香依旧。

一题记腊月;本该除旧迎新。

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

实验4 多级中断
一、实验目的
1)通过实验了解定时器中门控信号的使用
2)通过实验了解多级中断的原理、编程方法
二、实验设备
PC机、星研Star16L仿真器系统+仿真头PODPH51(DIP)、EL-Ⅱ型通用接口板实验电路,PROTEUS仿真软件。

三、实验内容
用单片机控制一个路灯,天黑时路灯启动,亮2秒,灭2秒,闪闪发光,白天时路灯熄灭。

用外部开关控制白天与黑夜的转换,用定时器控制路灯的闪亮
1、采用多级中断嵌套,INT0中断(低级)控制黑天白天状态;T0中断(高级)控制灯的闪亮。

四、实验电路
五、实验程序及注释
ORG 0000H
LJMP MAIN
ORG 0003H ;INT0中断入口地址
LJMP WBINT
ORG 000BH ;T0中断入口地址
LJMP TLINT
ORG 0100H
MAIN: ;主程序
MOV SP,#30H
MOV IE,#0H ;关中断
MOV TCON,#0H ;INT0低电平触发中断
MOV IP,#2H ;T0高级中断INT0低级中断MOV TMOD,#0H ;T0方式0
MOV TL0,#18H
MOV TH0,#63H ;T0赋定值
MOV R7,#0C8H ;T0中断计数值
MOV R6,#10 ;T0工作状态灯的显示时间控制CLR P1.0 ;主程序工作指示
CLR P1.1 ;INT0中断程序工作指示
CLR P1.6 ;T0中断程序工作指示
CLR P1.7 ;路灯工作指示
CLR P1.2
CLR P1.3
CLR P1.4
CLR P1.5
SETB EX0 ;开INT0中断
SETB EA ;开总中断
WAIT:
CPL P1.0 ;P1.0闪动显示
ACALL DL Y ;主程序循环
AJMP W AIT ;等待中断
DL Y: MOV R0,#01H ;闪动延时时间设定子程序1 DL Y0: MOV R5,#0FFH
DL Y1: MOV R4,#0FFH
DL Y2: DJNZ R4,DL Y2
DJNZ R5,DL Y1
DJNZ R0,DL Y0
RET
W_DL Y: MOV R1,#01H ;闪动延时时间设定子程序2
W_DL Y0:MOV R2,#0FFH
W_DL Y1:MOV R3,0FFH
W_DL Y2:DJNZ R3,W_DL Y2
DJNZ R2,W_DL Y1
DJNZ R1,W_DL Y1
RET
WBINT: CLR EX0 ;关INT0中断
SETB ET0 ;开放T0中断
SETB TR0 ;启动T0
CLR P1.0
WBW: CPL P1.1 ;INT0中断工作标志
ACALL W_DL Y
NB P3.2,WBW ;等白天信号
CLR TR0 ;关T0
CLR ET0 ;关T0中断
CLR P1.1
CLR P1.6
CLR P1.7
SETB EX0 ;开INT0中断
RETI
TLINT: MOV TL0,#18H ;t0重新置初值
MOV TH0,#63H
DJNZ R6,EXP2
MOV R6,#10
CPL P1.6 ;T0中断10次显示变化
EXP2: DJNZ R7,EXPORT
MOV R7,#0C8H ;T0中断200次
CPL P1.7 ;等于2秒,路灯变化
EXPORT:RETI
END
六、实验结果
当开关处于低电平状态,则P1.1接的LED灯L2跟P1.6接的L7会闪烁,表明INT0中断子程序跟T0中断子程序正在进入中断中,此时模拟处于黑夜的状态,则P1.7接的代表路灯的L8会以程序中设定的间隔时间2秒亮灭;当开关拨上高电平,则P1.0接的L1会闪动,表明程序正在主程序那里循环,此时L2,L7,L8均不亮。

相关文档
最新文档