- 1、本文档共46页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
8259的编程分为两个阶段:初始化阶段和操作阶段。 初始化阶段应该在系统加电或复位后由初始化程序完成。用输出指令向8259置入初始化命令。 操作阶段,用输出指令向8259发适当的操作命令字,实现对8259的状态、中断方式和过程的控制。 初始化编程的任务: 第一、设定中断请求信号的有效形式,即高电平有效,还是低电平向高电平跳变的上升沿有效; 第二、是单片工作方式还是级联工作方式; 第三、设定8259管理的中断类型号基值,即0级中断IR0对应的中断类型号,当中断请求响应时,得到中断向量表中相应的地址; 第四、设定各级的优先排序规则; 第五、设定一次中断处理结束时的结束操作规则。 通过向8259发初始化命令字ICW实现。 初始化命令字ICW1: 格式:设置ICW1需要I/O地址为A0=0。 D7 D6 D5 D4 D3 D2 D1 D0 初始化命令字ICW2说明: ▲外中断的中断类型号是在中断需要期间由8259提供的; ▲8259是根据初始化过程中用ICW2命令置入的中断类型号基值来提供中断类型号。 ▲IR0对应的中断类型号是中断类型号基值,一定能被8整除的正整数。 初始化命令字ICW3:专为级联而设置的。 当只有一片8259A(即设ICW1的D1位为1),则不设置CW3;当多于一片时,将主片和从片的ICW1中D1位设置为0;且在设置ICW2之后向A0=1地址设置的才是ICW3。 ICW3(主控) ICW3(从属) 初始化命令字ICW4:只有ICW1的IC4位为1才能设置ICW4 格式: D7 D6 D5 D4 D3 D2 D1 D0 8259初始化命令字设置次序: OCW1 OCW2:设置OCW2地址的是A0=0 。 OCW3:用于管理特殊的屏蔽方式和查询方法。设置OCW3地址的是A0=0 。 D7 D6 D5 D4 D3 D2 D1 D0 D7 D6 D5 D4 D3 D2 D1 D0 作 业 P265-266 8.5,8.6,8.18,8.19,8.20 五、8259A的编程 8.3 中断控制器8259A及其应用 ●操作编程 RIS RR P 1 0 SMM ESMM 0 P:管理查询方式, 1 指明查询方式,即查询决定优先级次序 0 非查询方式。 RR、RIS:控制读出8259内部寄存器IRR和ISR的内容。 10、11读寄存器IRR、ISR的命令; 00、01 无意义,其中P=0 OCW3(续) 五、8259A的编程 8.3 中断控制器8259A及其应用 ●操作编程 当P=1时的OCW3可用作查询指令。下一条对同一地址(A0=0)的读指令起中断识别作用,其操作是,如当时有中断请求,将识别出优先级最高的中断请求,把ISR的相应位置1,同时输入一个字节的信息到CPU(AL),这个字节信息的格式如下: W0 W1 W2 - - - - 1 位7=1:表示有中断请求,W2-W0指明请求服务的各中断级中的最高优先级,否则无中断请求。 六、中断方式输入输出程序设计 8.3 中断控制器8259A及其应用 ●主程序设计 1、微处理器初始化:设置堆栈,设置中断向量,开放中断。 2、中断控制器8259A的初始化:选择工作方式,设置优先级规则,清除相应的屏蔽位等。 3、接口的初始化:将接口恢复到初始状态,对于可编程的接口,要设置接口的工作方式,设置接口的中断开放位等。 六、中断方式输入输出程序设计 8.3 中断控制器8259A及其应用 ●主程序设计 4、中断服务程序的初始化:设置中断服务程序使用的缓冲区指针、计数器、状态位等。 5、对于输出过程,应在主程序中启动第一次输出,否则不会发生输出中断。 六、中断方式输入输出程序设计 8.3 中断控制器8259A及其应用 ●中断服务程序设计 1、保护现场:把所有中断服务程序里要使用、会改变值的寄存器压入堆栈。注意:中断服务程序所使用的指针、缓冲区等都存放在内存储器中。 2、开放中断:允许微处理器响应优先级更高、更紧急的中断。 3、输入输出处理 六、中断方式输入输出程序设计 8.3 中断控制器8259A及其应用 ●中断服务程序设计 4、关闭中断:中断服务进入结束阶段,关闭中断可以避免不必要的中断嵌套。 5、恢复现场:按照“先进
文档评论(0)