[工学]09微机接口_第九章.ppt

[工学]09微机接口_第九章

?优先级特殊循环方式。这种方式与优先级自动循环方式唯一的区别是,其初始的优先级顺序不是固定IR0为最高,然后开始循环,而是由程序指定IR0 ? IR7中任意一个为最高优先级,然后再按顺序自动循环,决定优先级。 5. 结束中断的处理方式 ?自动中断结束方式。在中断服务程序中,中断返回之前,不需发中断结束命令就会自动清除该中断源所对应的ISR位(实际上在CPU发第二个信号时,8259即自动消除ISR中的对应位)。这种方式用在多个中断不会嵌套的系统中。 ?非自动中断结束方式。在中断服务程序返回之前,必须发中断结束命令才能使ISR中的当前服务位清除。 四、8259A 的初始化命令字 8259A 初始化编程时,有四个初始化命令字ICW(Initialiation Command Word),即ICW1?ICW4 ;8259A工作期间,有三个操作命令字OCW(Operation Command Word),即OCW1~OCW3。 8259A 只有两个端口地址 A0= 0 偶地址端口 1 奇地址端口 因此,对8259A读/写操作时,要注意控制字 写入的端口地址 写入的顺序 有关的标志位 1. ICW1 (IRi 触发方式,是否单片使用,是否写入ICW4) 0 ? ? ? 1 LTIM ? SNGL IC4 A0 D7 D6 D5 D4 D3 D2 D1 D0 标志位 ① LTIM:规定IRi的触发方式 1 高电平触发 0 触发 = ② SNGL:是否单片使用 1 单片使用 0 级联使用 = ③ IC4:是否写入ICW4 1 后面写入ICW4 0 不写入ICW4 = 例:某8086微机系统中,使用单片8259A,中断请求信号为上升沿触发,需要设置ICW4,端口地址为20H,21H,则其初始化命令字ICW1应为13H,设置ICW1的指令为: MOV AL , 13H OUT 20H , AL 2. ICW2 (中断类型号的高5位) (中断类型号的低3位由8259A 自动编码产生) 1 T7 T6 T5 T4 T3 ? ? ? A0 D7 D6 D5 D4 D3 D2 D1 D0 IRi 对应中断类型号的高5位 T7 T6 T5 T4 T3 T2 T1 T0 由ICW2规定 0 0 0 0 0 1 0 1 0 ? 1 1 1 IR0 IR1 IR2 ? IR7 例:某PC机中8个可屏蔽中断(IR0 ? IR7)的类型号为08H ? 0FH,A0=1,端口地址为21H,则ICW2为:08H,设置ICW2的指令为: MOV AL , 08H OUT 21H , AL 3. ICW3 (级联时,主从芯片的级联引脚) 若ICW1 中SNGL= 1 不写入ICW3 0 写入ICW3 (1) 写给主片的ICW3 Si = 1, 表示主片IRi上接有从片。 1 S7 S6 S5 S4 S3 S2 S1 S0 A0 D7 D6 D5 D4 D3 D2 D1 D0 (2) 写给从片的ICW3 ID2 ID1 ID0 该从片 0 0 0 接入主片的IR0 0 0 1 接入主片的IR1 ? ? 1 1 1 接入主片的IR7 1 0 0 0 0 0 ID2 ID1 ID0 A0 D7 D6 D5 D4 D3 D2 D1 D0 从片的标志码 例:某8086微机系统中,主片8259A的IR2,IR6引脚上分别接有从片8259A,则主、从片的ICW3初始化命令字设置如下: 主片初始化命令字:(口地址设为20H, 21H) MOV AL , 44H   ;44H为主片的ICW3 ,表示其IR6 ,IR2上接有从片 OUT 21H ,AL    ;将ICW3 写入奇地址端口 从片1的初始化命令:(口地址为30H,31H) MOV AL ,02H OUT 31H ,AL 从片2的初始化命令:(口地址为40H,41H) MOV AL ,06H OUT 41H ,AL 4. ICW4 1 0 0 SFNM BUF M/S AEOI 1 A0 D7 D6 D5 D4 D3 D2 D1 D0 0 标志位 用于8088/ 8086系统 0 正常的完全嵌套方式 1 特殊的完全嵌套方式 (1) SFNM: 规定8259A中断的嵌套方式 (单片使用时,两种方式一样。) SFNM= ① 正常的完全嵌套方式 高级的中断 ② 特殊的完全嵌套方式 同级的或高级的中断 注意:级联使用时,某一从片的IRi对主片来说是同级的(同级中断)。 此处,要理解

文档评论(0)

1亿VIP精品文档

相关文档