简述单片机中断相应过程

简述单片机中断相应过程,第1张

首先开中断,包括各个中断源和总中断,并设置中断触发条件,如定时器初值, 低电平触发还是下降沿触发,然后运行主程序,中断条件具备时,转入中断程序,中断程序完成后,返回主程序,至于保护重要的寄存器内容,属于中断程序之中的内容,包括有些共用中断判断到底属于哪 一个中断和清除中断标志,都是中断程序的内容,有的必须有,有的就没有。

cpu产生中断后首先进行压栈 *** 作,将打断的程序运行数据一一入栈,中断服务程序执行完后把入栈的运行数据按照相反的顺序依次出栈,恢复中断前的运行状态,CPU

开始返回中断前的地方继续运行

1、中断:指当出现需要时,CPU暂时停止当前程序的执行转而执行处理新情况的程序和执行过程。即在程序运行过程中,系统出现了一个必须由CPU立即处理的情况,此时,CPU暂时中止程序的执行转而处理这个新的情况的过程就叫做中断。

2、中断服务程序:处理器处理"急件",可理解为是一种服务,是通过执行事先编好的某个特定的程序来完成的,这种处理"急件"的程序被称为--中断服务程序。

3、中断是处理器一种工作状态的描述。我们把引起中断的原因,或者能够发出中断请求信号的来源统称为中断源。

1、中断的处理过程为:关中断(在此中断处理完成前,不处理其它中断)、保护现场、执行中断服务程序、恢复现场、开中断。

2、通常中断源有以下几种:

(1)外部设备请求中断。

(2)故障强迫中断。

(3)实时时钟请求中断。

(4)数据通道中断。

(5)程序自愿中断。

3、中断系统的功能中断系统应具有的功能可归结为中断处理和中断控制。

(1)中断处理。中断处理包括发现中断请求、响应中断请求、中断处理和中断返回。

(2)中断控制。中断控制主要是实现中断优先级的排队和中断嵌套。

4、防止方法

(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鼠标用。

我告诉你思路,例子就不举了,很简单:

1、定义一个dword变量xxx用以存储原来的中断向量(所谓中断向量即中断发生时执行的子程序入口地址)

2、编写自己的中断处理过程(yyy proc far),该处理过程内应保存所有可能修改的寄存器,并在返回前恢复原状;一般情况下,如果还需要执行原有中断处理过程,那么调用jmp far xxx链接到原来的中断过程;如果不需要执行原有过程,那么直接以iret返回即可

3、在主程序开始时,先调用int 35h,获取指定中断号的中断向量,将返回的中断向量存储在xxx变量中

4、调用int 25h,将指定的中断号的中断向量指向自己的过程yyy

5、当前程序在退出前,应再次调用int 25h,将被修改掉的中断号的中断向量恢复为xxx变量的值

以上就是关于简述单片机中断相应过程全部的内容,包括:简述单片机中断相应过程、CPU发生中断时入栈和出栈的过程、什么是中断什么是中断服务程序什么是中断源等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zz/9403776.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-28
下一篇 2023-04-28

发表评论

登录后才能评论

评论列表(0条)

保存