什么是单片机的中断?
不同的计算机其硬件结构和软件指令是不完全相同的,因此,中断系统也是不相同的。
计算机的中断系统能够加强CPU对多任务事件的处理能力。中断机制是现代计算机系统中的基础设施之一,它在系统中起着通信网络作用,以协调系统对各种外部事件的响应和处理。中断是实现多道程序设计的必要条件。 中断是CPU对系统发生的某个事件作出的一种反应。
引起中断的事件称为中断源。中断源向CPU提出处理的请求称为中断请求。发生中断时被打断程序的暂停点称为断点。
CPU暂停现行程序而转为响应中断请求的过程称为中断响应。处理中断源的程序称为中断处理程序。
CPU执行有关的中断处理程序称为中断处理。而返回断点的过程称为中断返回。中断的实现实行软件和硬件综合完成,硬件部分叫做硬件装置,软件部分称为软件处理程序。
响应处理
大多数中断系统都具有如下几方面的操作,这些操作是按照中断的执行先后次序排列的。
1、 接收中断请求。
2、 查看本级中断屏蔽位,若该位为1则本级中断源参加优先权排队。
3、 中断优先权选择。
4、 处理机执行完一条指令后或者这条指令已无法执行完,则立即中止现行程序。接着,中断部件根据中断级去指定相应的主存单元,并把被中断的指令地址和处理机当前的主要状态信息存放在此单元中。
5、 中断部件根据中断级又指定另外的主存单元,从这些单元中取出处理机新的状态信息和该级中断控制程序的起始地址。
6、 执行中断控制程序和相应的中断服务程序。
7、 执行完中断服务程序后,利用专用指令使处理机返回被中断的程序或转向其他程序。
冲突
在一些罕见的情况下,两个ISA设备可以共享相同的 IRQ,只要它们不同时使用即可。为了解决这个问题,后来的PCI 总线允许 IRQ 共享。PCI Express没有物理中断线,并使用消息信号中断(MSI) 到操作系统(如果可用)。
在早期的 IBM 兼容个人计算机中,中断曾经是一种常见的硬件错误,当两个设备尝试使用相同的中断请求(或 中断)向可编程中断控制器(PIC)发出中断信号时会收到该错误。
PIC 期望每条线路仅来自一个设备的中断请求,因此沿同一条线路发送 中断信号的多个设备通常会导致 中断 冲突,从而导致计算机死机。
例如,如果在系统中添加调制解调器 扩展卡并分配给中断4,传统上分配给串行端口 1,则可能会导致中断冲突。最初,中断 7 是使用声卡的常见选择,但后来发现 中断 7 会干扰打印机端口(LPT1)时使用了中断5 。该串行端口经常禁用可以用于其他设备的中断线。
中断 2/9 是 MPU-401 MIDI 端口的传统中断线,但这与ACPI系统控制中断(SCI 在 Intel 芯片组上硬连线到 中断9)冲突;
这意味着 ISA MPU-401 带有硬连线中断2/9 的卡和带有硬编码 中断 2/9 的 MPU-401 设备驱动程序不能在启用 ACPI 的系统上以中断驱动模式使用。
以上内容参考 百度百科-中断
2023-06-12 广告
单片机中断是指CPU在正常执行程序的过程中,由于计算机内部或外部发生了另一事件(如定时时间到,超压报警等),请求CPU迅速去处理,CPU暂时停止当前程序的运行,而转去处理所发生的事件。
1、中断装置和中断处理程序统称为中断系统。中断系统是计算机的重要组成部分。实时控制、故障自动处理、计算机与外围设备间的数据传送往往采用中断系统。
2、单片机的中断分类:只有两类,外部中断和定时器中断。这两种中断使用时可以完全分离,最常用的自动中断是定时器中断,也就是自己设定一个“倒计时”,该倒计时与主程序同时开始。
3、定时器中断的开启方法只需要这几个寄存器设置:
EA=1表示允许任何中断开启;
ETx表示时间耗尽允许执行中断程序;
TRx表示允许倒计时开始;
TMOD表示倒计时的计时工作方式;
THx,TLx表示倒计时的值。
然后写中断程序interrupt 1或3 。