实验 中断实验

实验 中断实验

一、实验要求

单片机P2.0口接一个绿色发光二级管,P2.1口接一个红色发光二极管,P3.2和P3.3分别接一个按钮。要求以中断方式实现如下功能:
(1)启动仿真,先按下P3.3的按钮后,红灯开始闪烁;此时按下P3.2的按钮,红灯停止闪烁,绿灯开始闪烁。
(2)启动仿真,先按下P3.2的按钮后,绿灯开始闪烁;此时按下P3.3的按钮,还是绿灯继续在闪烁,红灯不会闪烁。

二、实验目的

1、掌握PC机中断处理系统的基本原理;
2、学会编写中断服务程序。

三、实验步骤

1、根据要求,绘制原理图;
2、打开Keil uVision3软件,新建文件编写汇编程序;
3、点击调试,再跳转至ISIS软件调试,即可完成实验。

四、实验截图

1、实验原理图

在这里插入图片描述

五、实验代码

#include<reg52.h>
#define uchar unsigned char

sbit P2_0 =P2^0;
sbit P2_1 =P2^1;
sbit P3_2 =P3^2;
sbit P3_3 =P3^3;

void delay02s(void)
{
  uchar	i,j,k;
  for(i=20;i>0;i--)
    for(j=20;j>0;j--)
	  for(k=248;k>0;k--)
	  ;
}

void main()
{
 EA=1;
 EX0=1;
 EX1=1;
 IT0=1;
 IT1=1;
 PX0=1;
 PX1=0;
 while(1);
}


void int0(void) interrupt 0
{
  if(!P3_2)
  {
  while(1)
  {
  P2_0=1;
  delay02s();
  P2_0=0;
  delay02s();
  }
  }
}

void int1(void) interrupt 2
{
  if(!P3_3)
  {
  while(1)
  {
  P2_1=1;
  delay02s();
  P2_1=0;
  delay02s();
  }
  }
}

六、实验结果

(1)启动仿真,先按下P3.3的按钮后,红灯开始闪烁;此时按下P3.2的按钮,红灯停止闪烁,绿灯开始闪烁。
在这里插入图片描述
在这里插入图片描述

(2)启动仿真,先按下P3.2的按钮后,绿灯开始闪烁;此时按下P3.3的按钮,还是绿灯继续在闪烁,红灯不会闪烁。在这里插入图片描述
在这里插入图片描述

七、心得体会

按照老师的要求完成实验后,对课程中学习到的中断方面的知识有了更深层次的理解,对汇编语言的操作和认知有了进步。
其次,通过本次课程设计使我感受到它是一门]综合性、 实践性较强的课程,使我体会到要想综合运用所学的理论知识,提高我的设计能力,必须增加实际操作的环节。这次课程设计不仅培养了我们的实际动手能力,更检验了我们对本门]课学习的情况,培养我们严肃认真的学习态度。真正做到理论联系实际,提高动手能力和分析问题、解决问题的能力。获益匪浅。

  • 5
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
中断实验是计算机组成原理实验中的一个重要实验。在中断实验中,我们需要编写一个中断服务程序,并将其与计算机系统的中断控制器相连。当系统发生中断事件时,中断控制器会通知CPU,并且CPU会跳转到中断服务程序中去执行特定的操作。 具体来说,中断实验通常包括以下几个步骤: 1. 编写中断服务程序:中断服务程序一般包括中断处理程序和中断返回程序。中断处理程序用于处理中断事件,中断返回程序用于将CPU的控制权返回到原来的程序中去。 2. 配置中断控制器:中断控制器用于管理系统中的中断事件。在实验中,我们需要将中断服务程序与中断控制器相连,并设置中断向量表、中断屏蔽字等参数。 3. 触发中断事件:为了测试中断服务程序是否能够正常工作,我们需要模拟中断事件的发生。可以通过手动输入中断指令、模拟硬件故障等方式来触发中断事件。 4. 执行中断服务程序:当中断事件发生时,中断控制器会通知CPU,并将中断号发送给CPU。CPU会根据中断号跳转到相应的中断服务程序中去执行特定的操作。 5. 返回原程序:当中断服务程序执行完毕后,需要将CPU的控制权返回到原来的程序中去。中断返回程序会执行一些清理工作,并将CPU的状态恢复到中断前的状态。 通过中断实验,我们可以深入了解计算机系统中的中断机制,以及如何编写中断服务程序来处理中断事件。这对于理解操作系统、驱动程序等领域的开发都非常有帮助。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值