《微型计算机通信与接口技术》-第三章
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
用系统功能调用装入(参照修改) 用系统功能调用装入 本章首页
3.1 8086中断系统(续) 8086中断系统 中断系统(
使用的DOS功能调用 获取中断向量(功能号AH=35H) 获取中断向量 入口参数:AL=类型号 出口参数:ES:BX=中断向量 设置中断向量(功能号AH=25H) 设置中断向量 入口参数:AL=类型号 入口参数DS:DX=中断向量
… OLD_OFF DW ? OLD_SEG DW ? ;定义保存原中断向量的2个字单元 s… ;保存原中断向量 s MOV AH,35H MOV AL,N ;恢复原中断向量 INT 21H s… MOV OLD_OFF,BX CLI MOV OLD_SEG,ES MOV AH,25H CLI MOV AL,N s ;设置新中断向量 MOV DX,OLD_OFF MOV AH,25H MOV DS,OLD_SEG MOV AL,N INT 21H PUSH DS MOV DX,SEG INT_SEV MOV DS,DX MOV DX,OFFSET INT_SEV INT 21H POP DS STI s…
1)中断申请
CPU执行完每条指令检测INTR;高电平, IF=1, 且无DMA请求,当前指令执行完进入响应阶段
2)中断响应
CPU连续发出2个INTA负脉冲; 取得类型号N;保护断点;查 表将中断向量赋予IP、CS; 进入中断服务程序
3)中断服务
执行中断服务程序
中断服务程序的结构
保护现场 STI ;若允许中断嵌套 服务程序主体 恢复现场 中断结束(EOI)命令 IRET
特点 随机性、 随机性、突发性 中断响应周期 类型号的提供 可屏蔽 软中断 否 无 指令或 固定 否 硬中断 (INTR) 是 有 中断 控制器 是
6. 软中断的应用
ROM-BIOS中断 ROM-BIOS中断 DOS中断 DOS中断
NMI具有随机 NMI具有随机 性, 其他特 点同软中断
7. 中断的处理过程 中断的处理过程(INTR)
6)中断优先级排队方式
按优先级排队 循环轮流排队
7)中断嵌套
完全嵌套 特定完全嵌套
本章首页
3.1 8086中断系统(续) 8086中断系统 中断系统(
分类: 分类:硬中断(外部中断)、软中断(内部中断)
3. 硬中断 硬中断(NMI和INTR)
中断号 02H 08H 09H 0AH 70H 71H 72H 73H 74H 75H 76H 77H 0BH 0CH 0DH 0EH 0FH IR Q NMI 0 1 2 8 9 10 11 12 13 14 15 3 4 5 6 7 标准应用
2)特殊中断
除法溢出中断(N=0) 除法溢出中断
条件: 条件:商超出规定寄存器的表示范围;字(AX),字节(AL) TF=0 条件: 条件:TF=1;调试工具或程序设置
单步中断(N=1) 单步中断 断点中断(N=3) 断点中断
⑥ 执行中断服务程序 ⑦ 执行IRET时 (SP) (SP) (IP), (SP) (PSW) (CS)
奇偶检验错、I/O检测错中断 定时器T0中断 键盘输入中断 接收从片8259A的中断请求 实时钟中断 改向INT 0AH(以IR2出现) 保留 系统 保留 硬中 保留 断 协处理器中断 硬磁盘控制器中断 保留 串行通信(COM2)中断 串行通信(COM1)中断 打印机(LPT2)中断 软磁盘控制器中断 打印机(LPT )中断
中断服务(处理) 程序、断点
3)中断向量与中断向量表
中断向量:中断服务程序入口地 中断向量: 中断向量 址 ,4个字节(偏移地址、段首址) 中断向量表:PA=000H~3FFH, 中断向量表: 中断向量表 256个;存储结构(中断号,顺序)
本章首页
2)中断识别:确定中断源,实现程序转移 中断识别:
向量中断:中断向量、中断号 向量中断: 向量中断 查询中断:软、硬件查询确定中断源 查询中断: 查询中断
用
NMI 本章首页
3.1 8086中断系统(续) 8086中断系统 中断系统(
2)可屏蔽中断INTR 可屏蔽中断INTR
可屏蔽: 可屏蔽:IF=1,开放;IF=0,屏蔽 类型号由8259A提供(PC机08H~0FH) 类型号由8259A提供 8259A提供 有效信号: 有效信号:高电平 INTR的处理过程
4)中断返回
执行到IRET恢复断点, 返回原程序
不同中断的处理过程区别:获取类型 号的方法不同;另,软中断无申请阶段
本章首页
3.1 8086中断系统(续) 8086中断系统 中断系统(
8. 中断响应周期及INTA的作 中断响应周期及INTA的作 两个连续中断应答信号INTA负 两个连续中断应答信号INTA INTA负 用
设中断类型号为N,服 务程序入口为INT_SEV 用MOV指令装入 MOV指令装入
CLI MOV MOV MOV MOV MOV MOV MOV STI AX,0 ES,AX DI,4*N AX,OFFSET INT_SEV ES:[DI],AX ;写入偏移地址 AX,SEG INT_SEV ES:[DI+2],AX ;写入段首址
2)内部结构
D0~D7 数据总线 缓冲器 A0 IOR IOW CS CAS0 CAS1 CAS2 SP/EN 读/写 逻辑 INTA 控制逻辑 INT
级联/缓冲 比较器
正在服务 寄存器 ISR
优先级 分析器 PR
中断请求 寄存器 ISR
IR0 IR1 IR7
…
中断屏蔽寄存器IMR
本章首页
3.2 可编程中断控制器8259A(续) 可编程中断控制器8259A(
脉冲组成一个中断响应周期
CLK ALE LOCK INTA
T1 T2 T3 T4 T1 T2 T3 T4
第1个负脉冲: 个负脉冲: CPU:LOCK=0;8259A: i=0;ISRi=1 8259A:IRR CPU: 8259A: 第2个负脉冲: 个负脉冲: CPU:LOCK=1;ALE=0;8259A: 8259A:类型号 CPU: 8259A: 自动结束方式ISRi=0 CPU
3.2 可编程中断控制器8259A(续) 可编程中断控制器8259A(
2.8259A的外部特性和内部结构 2.8259A的外部特性和内部结构 8259A
1)引脚(28脚)
面向CPU的信号 面向CPU的信号(14) CPU的信号 D0~7、CS、RD、WR CS、RD、 A0:端口选择信号;输入 INT :8259A的中断申请; 输出;高有效;向CPU 发出中断申请 INTA:中断响应;输入; INTA: 接收CPU的中断响应 信号, 第2个负脉冲 中送出类型号 面向外设的信号 面向外设的信号(8) IR0~7:外设的中断申请; 输入;触发方式由编 程设定 面向同类芯片的信号 面向同类芯片的信号(4) CAS0~3:级联信号;双向;主片向从片发送级联代码 SP/EN:主从定义/缓冲器方向;双功能;缓冲方式: SP/EN: 输出,控制缓冲器传送方向,非缓冲方式:输入, 定义主从片,1:主片,0:从片
D0~7
类型号
3.2 可编程中断控制器8259A 可编程中断控制器8259A
1.8259A协助CPU完成的工作 1.8259A协助CPU完成的工作 8259A协助CPU
接收和扩充外设的中断请求 接收和扩充外设的中断请求(一片可管理8级中断;两级级联最多管理64级) 接收和扩充外设的中断请求 优先级排队管理 优先级排队管理(固定优先级、循环优先级) 优先级排队管理 控制中断请求的屏蔽与开放 控制中断请求的屏蔽与开放 提供中断类型号 提供中断类型号(向量中断,还可实现查询中断) 提供中断类型号 本章首页
中断向量的修改 中断向量的修改 修改方法与步骤 保存原中断向量 INT 21H 的35H号功能 设置新中断向量 INT 21H 的25H号功能 恢复原中断向量 INT 21H 的25H号功能 使用后恢复
用串操作指令装入
CLI CLD MOV AX,0 MOV ES,AX MOV DI,4*N MOV AX,OFFSET INT_SEV STOSW MOV AX,SEG INT_SEV STOSW STI
随机性
1)不可屏蔽中断NMI 不可屏蔽中断NMI
不可屏蔽: 不可屏蔽:不受IF状态影响 类型号固定: 类型号固定:02H 有效信号: 有效信号:上升沿 紧急故障处理: 紧急故障处理:RAM奇偶校验错、 I/O通道校验错、协处理器运算错
协 处 INT 器 CP NMI PC IO CHC 0A0H R T CLR 理
3.1 8086中断系统(续) 8086中断系统 中断系统(
4)中断类型号与中断向量指针
类型号:8位,N=00~FFH 类型号: 类型号 中断向量指针:PA=4*N 中断向量指针: 中断向量指针
5)中断向量的装入(填写)与修改 中断向量的装入(填写)
装入:系统配置和使用的系统软件负责 装入: 装入
① 开中断,接收请求 ② 发2个INTA,取得类型号N ③ (PSW) ④ (CS) ⑤ (IP) (SP),IF=TF=0 (SP),(4*N+2) (SP),(4*N) CS IP
4. 软中断
1)双字节指令形式的中断(INT n) 双字节指令形式的中断(INT
ROM-BIOS中断: ROM-BIOS中ຫໍສະໝຸດ Baidu:INT 10H;INT 16H 中断 DOS中断: DOS中断:INT 21H;INT 20H 中断 未定义中断: 未定义中断:INT 60H;INT 78H
第三章
第三章 中断技术
本章内容 本章内容
3.1 8086中断系统 3.2 可编程中断控制器8259A 3.3 8259A在微机系统中的应用
3.1 8086中断系统 8086中断系统
1. 什么是中断
中断: 中断:是指CPU在正常运行程序时,由于内部/外部事件或由程序预先安排的事件, 引起CPU中断正在运行的程序,转去为该事件服务。服务完毕,再返回去继续运 行被暂时中断的程序的过程。
3.2 可编程中断控制器8259A(续) 可编程中断控制器8259A(
级联缓冲器/比较器:级联时传送 级联缓冲器/比较器: 级联缓冲器 级联代码;缓冲方式控制传送方向 读写控制逻辑:中断类型号的读 读写控制逻辑: 读写控制逻辑 取不是读写逻辑控制的 INTA
CS WR RD A0 0 0 0 0 0 0 1 1 1 1 0 0 0 1 0 1 读写操作 写ICW1,OCW2~3 写ICW2~4,OCW1 读IRR,ISR,查询字 读IMR 主片 从片 TP86A 20H 21H 20H 21H 0A0H FFECH 0A1H FFDEH 0A0H FFDCH 0A1H FFDEH
中断请求寄存器 中断请求寄存器(IRR):8位,寄存有请求的中断级,IRi有请求,IRRi=1 中断请求寄存器 : 中断服务寄存器(ISR):8位,寄存正在服务的中断级,IRi被响应且未服 中断服务寄存器 中断服务寄存器 : 何时 务完,ISRi=1,ISR可能多位同时为1 中断嵌套 中断屏蔽寄存器 中断屏蔽寄存器(IMR):8位,寄存中断级的屏蔽情况,IMRi=1,IRi被屏蔽 中断屏蔽寄存器 : 优先级分析器 优先级分析器(PR):由IRR、IMR、ISR的状态确定INT引脚的输出; 优先级分析器 : 优先级编码器+比较电路
2. 中断源与中断识别
1)中断源:发出中断请求的外部设备或引起中断的内部原因 中断源:
外设中断:键盘、打印机、显示器等 外设中断: 外设中断 指令中断:INT 10H、INT21H等 指令中断: 指令中断 硬件故障中断:奇偶错、电源故障等 硬件故障中断: 硬件故障中断 程序性中断:除法溢出、非法操作码等 程序性中断: 程序性中断
ISR编码器 比 较 器 请 求 优 先 级 编 码 器 B0 B1 B2 A>B A0 A1 A2 断 中 1 D0 D1 D2 D3 D4 D5 D6 D7 中断屏蔽寄存器IMR IR0 中 IR 1 断 请 IR2 求 IR 3 寄 存 IR4 器 IR 5 IRR IR6 IR7
INT
&
本章首页
条件: 条件:调试工具中使用
TF=1
PUSHF POP AX AND AH,0FEH (OR AH,01H) PUSH AX POPF
溢出中断(N=4) 溢出中断
条件: 条件:OF=1且执行INTO指令
⑧ 继续运行原程序
本章首页
3.1 8086中断系统(续) 8086中断系统 中断系统(
5. 硬中断与软中断的比较