1.51单片机中什么是中断?其作用是什么?怎么用?用自己的理解回答把

2.什么是中断?

3.程序中断方式保存现场为什么要分两步

51单片机中什么是中断?其作用是什么?怎么用?用自己的理解回答把

系统中断有什么用-电脑系统中断的目的

中断就是中途打断。

通俗解释:

你在看影碟,有人敲门(中断源),中断了你看影碟,观看暂停。处理敲门的事宜(中断目的),处理完成(中断结束),继续看影碟(继续执行原来的任务)。

再比如:你在看电视,水开了(中断源),把水灌到暖瓶里(中断目的),再烧上一壶(继续开中断),回去看电视。水又开了。。。。。。。。(循环中断)

以51单片机16位定时计数器0(T0)来讲,

计数是T1是一个能盛65536(十六位时)滴水的水盆,在水龙头下水一滴滴地滴入盆中。如果盆是空的那水在滴完65536滴水时盆子的水就满了再滴一滴的时候就溢出了。这时就会产生中断。

如果盆里面已经装入65500滴水(即初装值),那么只需要36滴水后就溢出了。

每一个水滴计数时即一个脉冲(高低电平变换一次)。

定时时每一个水滴即一个机器周期,水滴的速度即机器周期,等于12个振荡周期(晶振的振荡频率除以12),直接影响到溢出的时间。

什么是中断?

中断的意思如下:

1、中断,是一种法律法规术语,是指在诉讼时效期间进行中,因发生一定的法定事由,致使已经经过的时效期间统归无效,待时效中断的事由消除后,诉讼时效期间重新起算。

2、中断是指计算机运行过程中,出现某些意外情况需主机干预时,机器能自动停止正在运行的程序并转入处理新情况的程序,处理完毕后又返回原被暂停的程序继续运行。

3、中断还指单片机中断系统,包括中断装置和中断处理程序。

分类

1、可屏蔽中断(maskable interrupt)。硬件中断的一类,可通过在中断屏蔽寄存器中设定位掩码来关闭。

2、非可屏蔽中断(non-maskable interrupt,NMI)。硬件中断的一类,无法通过在中断屏蔽寄存器中设定位掩码来关闭。典型例子是时钟中断(一个硬件时钟以恒定频率—如50Hz—发出的中断)。

3、处理器间中断(interprocessor interrupt)。一种特殊的硬件中断。由处理器发出,被其它处理器接收。仅见于多处理器系统,以便于处理器间通信或同步。

4、伪中断(spurious interrupt)。一类不希望被产生的硬件中断。发生的原因有很多种,如中断线路上电气信号异常,或是中断请求设备本身有问题。

5、软件中断(Software Interrupt)。是一条CPU指令,用以自陷一个中断。由于软中断指令通常要运行一个切换CPU至内核态(Kernel Mode/Ring 0)的子例程,它常被用作实现系统调用(System call)。

参考资料:百度百科-中断

程序中断方式保存现场为什么要分两步

什么是中断?中断就是让cpu中断当前的正常指令而转去执行另一处特点的代码的一种机制。

什么是中断向量表?中断向量表就是对应的中断号所对应的内存内址,某一中断发生后,CPU就去查这个表,从中取出一个地址,然后转去执行该地址处的指令。

中断的类型一般有哪些?中断的类型有硬件中断,如计时器中断,DMA中断,串口中断,和软件中断,如int指令 .

有中断了,cpu一定要会中断当前的执行吗?不一定,有些中断是可以屏蔽的,比如一次时钟中断产生,cpu跳去执行中断入口处的程序,在进入中断后,为了不引起混乱,中断程序通过指令设置屏蔽标志,这样,以后的时间中断就不会再引起CPU的中断了,在时钟中断程序执行完毕任务后,再次通过指令取消屏蔽标志,以后的时间中断就可以引起CPU中断,并再次进入时钟中断程序。

CPU是通过设置时间中断来实现抢占机制的,在进入保护模式之前先初始化中断向量表,在时钟中断入口处放置任务切换代码。然后设置好时钟中断的时间。

当某一线程的执行用光了时间片时,时钟中断产生,cpu转去执行中断处的任务切换代码,保存当前线程的状态,得到并灰复下一个线程的状态,然后转去执行那个线程,依此类推。

为了尽可能的提高CPU的利用率,当某一线程必须转入等待状态,如要获取某一低速外设的数据时,这里的读操作程序会主动放弃当前没有用光的时间片,主动调用任务切换中断代码,把CPU的时间让给其它已经准备好可以继续的线程。 1.中断 zhōngduàn

[interrupt;discontinue;suspend;come to stop;break down (off)] 半中间发生阻隔、停顿或故障而断开

交通中断

2.是指在计算机执行期间,系统内发生任何非寻常的或非预期的急需处理,使得CPU暂时中断当前正在执行的程序而转去执行相应的时间处理程序。待处理完毕后又返回原来被中断处继续执行或调度新的进程执行的过程。

中断是单片机实时地处理内部或外部的一种内部机制。当某种内部或外部发生时,单片机的中断系统将迫使CPU暂停正在执行的程序,转而去进行中断的处理,中断处理完毕后,又返回被中断的程序处,继续执行下去。

一、什么是中断

虽然现在win9x已经有了PNP(即插即用)功能,但是中断冲突仍然是不可避免的,其中最为容易发生冲突的就是IRQ、DMA和I/O。首先我们先了解一下IRQ、DMA和I/O的概念:

1、IRQ(Interrupt Request)

IRQ英文全称Interrupt Request,中文翻译为中断请求线。计算机中有许多设备(例如声卡、硬盘等)他们都能在没有CPU介入的情况下完成一定的工作。但是这些设备还是需要定期中断CPU,让CPU为其做一些特定的工作。如果这些设备要中断CPU的运行,就必需在中断请求线上把CPU中断的信号发给CPU。所以每个设备只能使用自己独立的中断请求线。一般来说在80286以上计算机中,共有16个中断请求线与各种需要用中断的不同外设相连接,(每个中断线有一个标号也就是中断号)。

中断号的分配情况如下:

IRQ 说明

0 定时器

1 键盘

2 串行设备控制器

3 COM2

4 COM1

5 LPT2

6 软盘控制器

7 LPT1

8 实时时钟

9 PC网络

10 可用(Available)

11 可用(Available)

12 PS/2 鼠标

13 数学协处理器

14 硬盘控制器

15 可用(Available)

NM1 奇偶校验

大家现在就可以清楚的看到,IRQ3、4、5、10、11、12、15可供用使用。

2、DMA(Direct Memory Access)

计算机与外设之间的联系一般通过两种方法:一是通过CPU控制来进行数据的传送;二是在专门的芯片控制下进行数据的传送。我们所说的DMA,就是不用CPU控制,外设同内存之间相互传送数据的通道,在这种方式下,外设利用DMA通道直接将数据写入存储器或将数据从存储器中读出,而不用CPU参与,系统的速度会大大增加。

DMA通道分配情况表

DMA 0 可用

DMA 1 EPC打印口

DMA 2 软盘控制器

DMA 3 8位数据传送

DMA 4 DMA控制器

DMA 5 可用

DMA 6 可用

DMA 7 可用

3、I/O(INPUT/OUTPUT)

输入/输出端口,也就是计算机配件与CPU连接的接口。每个端口都有自己唯一的一个端口号,这个端口号称为地址。每一个想和CPU通信的外设或配件都有不同的I/O地址,通常在PC机内部一共有个地址。

二、中断冲突的解决

现在我们已经基本知道了IRQ、DMA和I/O的概念,下面我就要说一下如何解决常见的中断冲突问题。

众所周知,现在的win9x已经运用PNP技术,它可以将中断进行自动分配,这种“即插即用” 的功能可以说是大大简化了用户的操作。不过任何事物都有好与不好两方面,这种PNP技术也有它的弱点,那就是如果不能认出要安装的新设备,那么自动分配中断时就会产生冲突。现在新的硬件产品层出不穷,各种产品又相互兼容,功能类似,这就导致了win9x常常不能正确检测出新设备,中断冲突也就不可避免了。

知道了冲突产生的原因,那我们如果解决冲突呢?在此我就详细的谈一谈在win9x下中断冲突的解决。首先我们要知道系统中冲突的设备,做法是在控制面板中双击“系统”图标,查看设备管理器中的各设备。一般有“?”和“!”的设备要注意了,有问题的设备就是它们了。解决方法有分两步做:

第一步、先删去有“?”和“!”的设备,然后重新启动,让计算机自己再认一遍这些设备。这样做是因为部分有“?”和“!”的设备可能是驱动程序安装有误,再重装一遍可解决问题。

第二步、如果上面一步还是不能解决问题,现在多半是中断冲突了,那我们只能手动调整来解决中断冲突。在系统=>设备管理器=>属性 中我们可以看到系统分配的情况,通过查看此项就可从中了解到哪些系统被占用,哪些系统还没有用,用户做相应的调整即可。

三、如何防止中断冲突

要防止中断冲突,其实就是要知道什么设备容易产生中断冲突,只要知道了这点,在使用这些设备时稍微注意一下就可以了。下面我列出一些容易冲突的设备,希望对读者有用。

1、声卡:一些早期的ISA型声卡,系统很有可能不认,就需要用户手动设置(一般为5)

2、内置调制解调器和鼠标:一般鼠标用COM1,内置调制解调器使用COM2的中断(一般为3),这时要注意此时COM2上不应有其它设备

3、网卡和鼠标:此问题一般发生在鼠标在COM1口,使用中断为3,这时要注意通常网卡的默认中断为3,两者极有可能发成冲突。

4、打印机和EPP扫描仪:在安装扫描仪驱动程序时应将打印机打开,因为两个设备中串联,所以为了防止以后扫描仪驱动程序设置有误,一定要将打印机打开再安装扫描仪驱动程序。

5、操作系统和BIOS:如果计算机使用了“即插即用”操作系统(例如win98),应将BIOS中PNP OS Installed设置为Yes这样可让操作系统重新设置中断。

6、PS/2鼠标和BIOS:在使用PS/2鼠标时应将BIOS中PS/2 Mouse Function Control打开或设置为Auto,只有这样BIOS才能将IRQ12分配给PS/2鼠标用。

四、操作系统中断

dos下应用程序可以自行申请中断,windows作为一种分时操作系统,工作在它之上的应用程序没有权利处理中断,这是为什么windows可以掌控所有进程并轮流运行的原因(它可以设置中断)。只有“0 ring”以内的vxd,wdm才享有中断权限,驱动级别的程序也能申请中断,这是我们能在"0 ring"以内施展拳脚的常用的途径。

[编辑本段]

简单理解

中断是一种发生了一个外部的时调用相应的处理程序的过程。

按照Ti官方文档得解释:中断是由于软件的或硬件的信号,使得CPU放弃当前的任务,转而去执行另一段子程序。可见中断是一种可以人为参与(软件)或者硬件自动完成的,使CPU发生的一种程序跳转

[编辑本段]

SNMP中的中断

SNMP从被管设备中收集数据的基本方法之一: 基于中断的方法(称为自陷,Trap)由被管设备主动发出,可以立即通知网络管理工作站。特点是实时性好,但有可能会导致系统消耗。

计算机中断概念的详细解释

什么是中断

中断是计算机中的一个十分重要的概念,在现代计算机中毫无例外地都要用中断技术。什么是中断呢?可以举一个日常生活中的例子来说明,如你正在给朋友写信,电话铃响了。这时,你放下手中的笔,去接电话。通话完毕,再继续写信。这个例子就表现了中断及其处理过程:电话铃声使你暂时中止当前的工作,而去处理更为急需处理的事情(接电话),把急需处理的事情处理完毕之后,再回头来继续原来的事情。在这个例子中,电话铃声称为“中断请求”,你暂停写信去接电话叫作“中断响应”,接电话的过程就是“中断处理”,相应地,在计算机执行程序的过程中,由于出现某个特殊情况(或称为“”),使得暂时中止现行程序,而转去执行处理这一的处理程序,处理完毕之后再回到原来程序的中断点继续向下执行,这个过程就是中断。

计算机为什么要用中断

为了说明这个问题,再举一例子。设你有一个朋友来拜访你,但是由于不知道何时到达,你只能在大门等待,于是什么事情也干不了。如果在门口装一个门铃,你就不必在门口等待而去干其它的工作,朋友来了按门铃通知你,你这时才中断你的工作去开门,这样就避免等待和浪费时间。计算机也是一样,例如打印输出,CPU传送数据的速度高,而打印机打印的速度低,如果不用中断技术,CPU将经常处于等待状态,效率极低。而用了中断方式,CPU可以进行其它的工作,只在打印机缓冲区中的当前内容打印完毕发出中断请求之后,才予以响应,暂时中断当前工作转去执行向缓冲区传送数据,传送完成后又返回执行原来的程序。这样就大大地提高了计算机系统的效率。

什么是中断的优先级

我们仍然可以举例说明中断优先级的概念。在上面的例子中,如果在电话铃响的同时,门铃也响了,那么你将在“接电话”和“开门”这两个中断请求中选择,先响应哪一个请求。这就有一个谁优先的问题。如果“开门”比“接电话”重要(或者说“开门”比“接电话”的优先级高),那么就应该先开门,然后再接电话,接完电话后再回头来继续写信。这就是说,当同时有多个中断请求时,应该先响应优先级较高的中断请求。

此外,如果在响应一个中断,执行中断处理的过程中,又有新的中断发生而发出了中断请求,应该如何处理也取决于中断的优先级。当新发生的中断的优先级高于正在处理的中断时,又将中止当前的中断处理程序,转去处理新发生的中断,处理完毕才返回原来的中断处理。在上面的例子中,我们设“开门”比“接电话”的优先级高。在你写信时,电话铃响了,你去接电话,在通话的过程中,门铃又响了。因为“开门”的优先级高,你只能让通话的对方稍等,放下电话去开门。开门之后再回头继续接电话,通话完毕再回去继续写信。而如果“开门”比“接电话” 的优先级低,那么在通话的过程中门铃响了也可以不予理睬,通话结束再去开门。当然,在日常生活中,谁也不会为“开门”和“接电话”规定一个优先级别的高低。但是在计算机中,各种中断很多,其优先级都有规定,否则就会乱套。在计算机中,中断的优先级是根据的实时性、重要性和软件处理的方便性来安排的。

中断的屏蔽

中断屏蔽也是一个十分重要的功能,所谓中断屏幕蔽是指通过设置相应的中断屏蔽位,禁止响应某个中断。这样作的目的,是保证在执行一些重要的程序中不响应中断,以免造成迟缓而引起错误。例如,在系统启动执行初始化程序时,就屏蔽键盘中断,使初始化程序能够顺利进行。这时,敲任何键,都不会响应。当然对于一些重要的中断是不能屏蔽的,例如重新启动、电源故障、内存出错、总线出错等影响整个系统工作的中断是不能屏蔽的。因此,从中断是否可以被屏蔽来看,可分为可屏蔽中断和不可屏蔽中断两类。

中断是怎样分类的

产生中断请求的设备或称为“中断源”。从中断源来看,中断一般可分为三类:

(1)由计算机硬件异常或故障引起的中断,也称为内部异常中断。

(2)由程序中执行了中断指令引起的中断,也称为软中断。

(3)外部设备(如输入输出设备)请求引起的中断,也称为外部中断或I/O中断。

在这三类中断中,外部中断我们接触得最多。下面我们来作进一步的介绍。

中断控制器和中断通道

因为每个设备都要使用中断,每个设备也就需要一个传送中断请求的通道。而CPU中只有一条接收中断请求的引脚,因此需要有一个机构来收集各个设备产生的各种中断请求,并按优先级排列送给CPU。这个机构称为中断控制器。早期的中断控制器是一片8259集成芯片,可以接收8个中断请求信号,也就是可以有8个中断通道。PC机允许使用15个中断通道,因此需要两片8259芯片。现在的微机仍然维持了这个结构,不过8259芯片已不是独立的芯片,而被进一步集成到其它的大规模芯片中了。

两片8259之间用级联的方法连接起来,即一片8259的输出连接到另一片8259的输入端。因此实际可以使用的中断通道只有15个

由于每个设备都要占用一个中断通道,如果有两个或两个以上的设备占用了相同的通道时就会发生冲突,使得设备不能正常工作甚至死机。因此在安装新的设备时,一定要选择那些还没有被占用(保留)的中断通道,否则就会引起冲突。选择中断通道一般是通过改变适配卡上的跳线来实现的。很多微机在安装声卡或**卡时没有正确地选择好中断通道,造成冲突后不能工作。对于有即插即用功能的微机和适配卡,能够自动地选择未被占用的通道,就不需要我们去设置了。

更加详细的可以查阅大学教材《微机原理》