微机原理与接口技术7中断.pptVIP

  • 9
  • 0
  • 约1.83万字
  • 约 82页
  • 2016-08-23 发布于重庆
  • 举报
微机原理与接口技术7中断

D7 D6 D5 =101 :使当前正在服务ISR位清0,并使其对应IR的优先级变为最低。 例3、自动循环、普通EOI命令 … MOV AL OUT 20H,AL IRET 执行前 ISR:0 1 0 0 1 0 0 0 优先级:7 6 5 4 3 2 1 0 执行后 ISR:0 1 0 0 0 0 0 0 优先级: 3 2 1 0 7 6 5 4 D7 D6 D5 =100 :进入自动循环优先状态,在CPU响应某一IR请求后自动将其ISR位清0,并将该IR的优先级变为最低。 1 0 0 0 0 0 0 0 D7 D6 D5 =000 :退出自动循环优先状态,此后按AEOI方式使ISR清0,优先级结构保持固定方式不变。 0 0 0 0 0 0 0 0 D7 D6 D5 =111 :同时完成普通EOI命令和设置最低优先级命令。 例4、循环指定、普通EOI命令(有多个中断时)。要把IR6定为最低 (L2L1L0=110) … MOV AL OUT 20H,AL 执行前 ISR: 0 1 1 0 0 1 0 0 优先级: 2 1 0 7 6 5 4 3 执行后 ISR: 0 1 0 0 0 1 0 0 优先级: 0 7 6 5 4 3 2 1 D7 D6 D5 =110 :使L2~L0所指定IR为最低优先级。该命令可用于循环优先的优先级结构改变,也可用于固定优先结构中设定优先级顺序。 例:设置优先权命令。若知当前IR5最高,想把IR7定为最高优先权。(实际上应该把IR6置为最低优先权)。此时, L2L1L0 =110 …. MOV AL OUT 20H,AL; IR7 IR6 IR5 IR4 IR3 IR2 IR1 IR0 (前)优: 2 1 0 7 6 5 4 3 (后)优: 0 7 6 5 4 3 2 1 (3)OCW3的格式(A0=0) 用于提供查询方式,特殊屏蔽方式,读状态等操作 D4D3=01,特征位 1.查询中断: P=1时,表示查询。 例:IR4引脚上有中断请求,CPU执行一条输入指令,从偶地址端口读得以下查询字: 8259A的操作命令字 P=0时,读IRR或ISR。 2.读状态 OCW3, RR=1,RIS=0,读IRR; OCW3, RR=1,RIS=1,读ISR。 若要读IMR,不须设OCW3的查询命令,直接从奇地址端口读入IMR。 3.特殊屏蔽方式操作 ESMM=1,SMM=1,置特殊屏蔽方式,8259A脱离当前优先级方式. ESMM=1,SMM=0,撤销特殊屏蔽方式 ESMM=0,SMM不起作用 8259A的操作命令字 4. 8259A哪些寄存器的内容可读出? 设8259A地址20H,21H 1)读中断屏蔽寄存器IMR内容:中断屏蔽字 IN AL,21H ;A0=1 2)要读出ISR或IRR的内容,A0=0 必须设置OCW3中的 D4D3 D2 =010: (1)读IRR:设置OCW3:D1D0=10 MOV AL, IN AL, 20H (2)读ISR:设置OCW3:D1D0=11 MOV AL, IN AL, 20H 8259A的操作命令字 3)此外,查询字也可读出,A0=0。先写入P=1的OCW3查询命令字 【问】 8529A仅占用两个I/O地址,它是如何区别4条ICW命令和3条OCW命令的?在地址引脚A0=1时读出的是什么? 【答】 A0=0写ICW1、OCW2、OCW3,以其特征位区分(D4D3分别是1X,00,01)。 A0=1写ICW2、ICW3、ICW4、OCW1,写ICW1后顺序写的是ICW2、ICW3、ICW4。 A0=0读IRR、ISR、查询字,由OCW3的RR和RIS两位区分IRR和ISR,通过OCW3的P位向8259发查询命令后读出的是查询字。 A0=1时,读IMR。 编写程序,将8259的IRR、

文档评论(0)

1亿VIP精品文档

相关文档