微机接口技术:第三章 8259_第1页
微机接口技术:第三章 8259_第2页
微机接口技术:第三章 8259_第3页
微机接口技术:第三章 8259_第4页
微机接口技术:第三章 8259_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、中断处理过程1中断的应用场合中断处理的基本流程:中断请求中断响应关中断断点保护中断源识别保护现场 中断服务 恢复现场开中断中断返回如果要求在中断服务过程中能给优先级更高的中断源提供服务则要求在之前开中断,相应的在之前关中断。中断处理过程28086中断源的分类硬件中断响应及其条件1 CPU在每条指令执行完时检测中断输入引脚。2 对于可屏蔽中断请求,CPU应处于开中断状态,要得到响应还必须满足以下条件: 没有更高级中断的请求发生; 请求必须保持到被响应为止。中断系统应具备的基本功能对硬件中断请求的控制;对中断源的优先排队与响应;中断的嵌套;中断的自动处理。优先权管理与中断嵌套优先权问题出现的场合。

2、优先权排队的方法: 硬件读取+软件查询; 链式排队电路; 优先权编码电路。中断嵌套的实现。中断向量实模式下,中断向量就是中断服务程序的入口地址。中断向量表:1KB,256种类型,每种4个字节(IP+CS)。用户自定义中断服务程序并将其分配给某类型,然后将入口地址写入中断向量表对应位置,当中断响应发生时即可执行中断服务程序。中断向量表的初始化BIOS与DOS提供的中断服务程序。用户自己的中断服务程序的中断向量应在用户程序中设置,如果代替了系统原有的中断服务程序应先保存原有的中断向量并在服务后恢复。DOS功能调用的两个子功能: 25H:写入中断向量; 35H:读出中断向量。其他方法BIOS中断与D

3、OS中断BIOS中断更接近硬件且功能更多,但DOS中断更接近用户。实用的应用程序是建立在BIOS中断和DOS中断上的。用户可自由使用的是60H66H类型的中断,对于其他的中断,用户也可以更改服务程序。避免DOS重入DOS是单任务操作系统,当主程序在执行INT 21H时,若某中断源提出中断,且在中断服务程序里再次执行INT 21H,将产生“DOS重入”,极有可能引起系统瘫痪。避免DOS重入的简单方法:在中断服务程序中用相应的BIOS中断替代INT 21H。8259A中断控制器最复杂的芯片和最简单的应用基本特征:两个8位端口;单片管理8个中断源,可级联两级;4个初始化命令字,3个操作命令字。内部结

4、构: 读写模块,数据缓冲器 IRR,ISR,IMR 优先权判决电路,级联缓冲比较器编程结构和工作原理系统启动时设置初始化命令字系统运行中可多次设置操作命令字8259A接受外设中断请求时的操作CPU响应8259A中断请求时双方的操作工作方式4种优先权管理方式2种屏蔽方式3种中断结束方式2种总线连接方式2中触发方式8259A的初始化与控制字编程ICW1:触发方式、是否级联、是否写入ICW4;ICW2:设置中断向量号;ICW3:级联命令字;ICW4:结束方式、主/从片、嵌套方式、缓冲方式;OCW1:屏蔽命令字;OCW2:中断结束和优先权循环命令字;OCW3:屏蔽和读状态命令字。口地址和命令/状态字读

5、写条件8259A只有两个口地址: 主片20H和21H,从片A0H和A1H。偶地址:写入ICW1、OCW2、OCW3或读出IRR、ISR、查询字。奇地址:写入ICW2、ICW3、ICW4、OCW1或读出IMR。如何编程?8259A用严格的顺序、特征位、前后写入指示等措施只用2个口地址就实现了丰富的编程。但在很多情况下,常用的工作方式就已经足够。8086系统采用边沿触发、常规屏蔽、完全嵌套,常规中断结束。在8086系统系统中,8259A的初始化是由BIOS在启动后自动完成的,随意更改8259A的工作方式是不明智的,不安全的。因此应用中实用的只有两项: 向奇地址端口写入中断屏蔽字OCW1; 向偶地址

6、端口写入常规中断结束命令字“20H”。8086中断系统的安排主从两片管理15级中断。各级中断的优先级与中断类型号。 主片中断向量08H0FH,从片70H77H(IR0实时时钟,IR1用户中断,IR5协处理器,其他保留)。用户中断连接到总线的B4端子,最终指向0AH号中断。BIOS中的71H服务程序PUSH AXMOV AL, 20HOUT 0A0H, ALPOP AXINT 0AH使用8086中断系统的注意事项写入IMR时不应破坏原有的屏蔽状态。若使用用户中断,应在用户程序中打开主从8259A对应的屏蔽位,结束用户程序前重新屏蔽。当使用从片中断源时,中断服务结束后应向主从8259A都发出结束命

7、令。编写中断服务程序的注意事项只采用存储单元传递参数。不使用DOS系统功能调用。尽量短小。根据需要开关中断。设置必要的屏蔽。注意段寄存器的值。键盘中断(1)键盘接口包括键盘盒内部的键盘电路和主机板上的键盘接口电路。键盘电路是以单片机为核心的键盘扫描电路,周期性的扫描闭合键的接通扫描码和断开扫描码。键盘接口电路接收按键扫描码,对串行数据进行奇偶校验,完成串并转换,将扫描码转换成系统扫描码,向8259A的IR1发起中断请求。键盘中断(2)CPU响应中断后从键盘接口电路端口60H读取扫描码,最终生成键代码存入键盘缓冲区,结束中断。键盘缓冲区为环形队列结构,位于系统RAM的40:1EH40:3DH,实际使用30个单元存放15个键的代码。缓冲区中的键代码由9型中断负责写入,用户程序调用16H中断的10H子功能可读出

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论