微机原理及应用第20讲:深入解析中断系统与接口技术实战

欢迎进入微机原理及应用第20讲的核心领域。在前面的课程中,我们已经深入探讨了8086/8088 CPU的内部结构、寻址方式以及指令系统。然而,真正的微机系统不仅仅是CPU的独角戏,它需要与外部世界进行高效、实时的数据交换。这就是本讲的核心主题——中断系统与I/O接口技术。

在本讲中,我们将解决一个关键问题:当多个外部设备同时请求CPU服务时,系统如何优雅地处理?为什么现代操作系统能实现多任务并发?答案就藏在中断机制和DMA传输之中。无论你是准备考研的学生,还是从事嵌入式开发的工程师,掌握这些知识都是构建坚实微机系统理论的基石。

⚡ 核心目标

掌握8086中断类型、中断向量表结构及中断处理流程。

⚙️ 关键硬件

深入理解可编程中断控制器8259A的工作原理及编程初始化。

? 高速传输

对比I/O查询、中断、DMA三种方式,掌握8237A DMA控制器应用。

一、 中断系统基础:微机系统的“神经反射”

中断(Interrupt)是微机系统中实现并行操作、实时控制和故障处理的核心机制。想象一下,当你正在打字(CPU执行主程序)时,突然按下电源键(外部中断),系统必须立即暂停打字,保存当前状态,去处理关机程序(中断服务程序),处理完毕后再回来继续打字。这就是中断的本质。

1.1 中断源分类

在微机原理及应用第20讲中,我们将中断源分为两大类:

1.2 中断向量表(IVT)

8086 CPU的中断向量表位于内存最低1KB处(00000H-003FFH)。每个中断向量占用4个字节,前2字节为偏移地址(IP),后2字节为段地址(CS)。系统共有256个中断向量,对应0-255号中断。

中断类型号 中断名称 触发原因 典型应用场景
00H 除法错误 除数为0或结果溢出 程序调试、异常处理
01H 单步中断 TF标志位置1 单步调试程序
08H 硬件定时中断 8253/8254定时器溢出 实时时钟、系统心跳
09H 键盘中断 键盘扫描码输入 用户输入处理
33H-3FH 用户自定义 INT n指令 软件功能调用

1.3 中断处理流程

CPU响应中断后,必须执行一系列严格的操作,这被称为“中断响应周期”:

  1. 中断请求响应:CPU在每个机器周期的S5期间查询中断请求。
  2. 中断响应:若满足条件,CPU发出INTA信号,从数据总线上读取中断类型码。
  3. 保护现场:CPU自动将FLAGS、CS、IP压栈,并清除IF和TF标志(对于可屏蔽中断)。
  4. 执行中断服务程序:从中断向量表中读取入口地址,跳转到服务程序执行。
  5. 中断返回:执行IRET指令,弹出IP、CS、FLAGS,恢复现场。

二、 8259A可编程中断控制器:中断管理的“指挥官”

8086 CPU本身只有一个可屏蔽中断请求引脚INTR,但实际系统中可能有多个中断源。这就需要8259A这样的可编程中断控制器(PIC)来管理多个中断请求,进行优先级判断、屏蔽控制和向CPU发送中断类型码。

2.1 8259A内部结构

8259A内部包含以下关键寄存器:

2.2 初始化命令字(ICW)

系统上电后,必须对8259A进行初始化,设置ICW1-ICW4。这是微机原理及应用第20讲的难点和重点。

ICW1:初始化控制字1

写入地址:偶地址端口。主要确定触发方式(边沿/电平)和级联模式(是否级联其他8259A)。

; 示例:边沿触发,非级联,需要ICW4
MOV AL, 13H  ; ICW1: 1001 0011B (ED4=0, SNGL=0, IC4=1)
OUT 20H, AL  ; 写入主片端口
                

ICW2:中断类型码基值

写入地址:奇地址端口。设置中断类型码的高5位(D7-D5),低3位由IR0-IR7自动填充。

; 示例:设置IR0对应类型码20H
MOV AL, 20H  ; ICW2: 0010 0000B
OUT 21H, AL  ; 写入主片端口
; 结果:IR0->20H, IR1->21H, ..., IR7->27H
                

ICW3:级联控制字

仅在主片需要写入。用于标识哪些IR引脚连接了从片。例如,若IR2连接从片,则ICW3=00000100B。

ICW4:工作方式控制字

确定工作模式。在8086系统中,通常设置为8086模式(EO=0, AEO=0, BUF=0, SFNM=0)。

MOV AL, 01H  ; ICW4: 8086模式
OUT 21H, AL
                

2.3 中断结束命令(EOC)

中断服务程序执行完毕后,必须向8259A发送EOC信号,以清除ISR中对应的位,允许后续中断。常用指令为:

MOV AL, 20H  ; EOC命令
OUT 20H, AL  ; 写入主片端口
                

三、 DMA技术:高速数据传输的“高速公路”

在微机原理及应用第20讲的后续部分,我们讨论I/O数据传输方式。除了程序查询和中断方式,DMA(直接存储器访问)是最高效的方式,特别适用于大批量数据的高速传输。

3.1 DMA工作原理

DMA控制器(如8237A)接管总线控制权,直接在I/O设备和内存之间传输数据,无需CPU干预。CPU仅在传输开始前(初始化)和结束后(检查状态)参与。

3.2 8237A关键特性

步骤1:初始化8237A

设置模式寄存器、通道掩码、初始地址和计数值。

步骤2:外设发出DMA请求

I/O设备通过DREQ引脚向8237A发出请求。

步骤3:总线请求与授权

8237A向CPU发出HLDA信号,CPU释放总线,8237A获得总线控制权(HOLD有效)。

步骤4:数据传输

8237A发出读写信号,直接控制数据在I/O和内存间流动,同时自动更新地址和计数。

步骤5:传输结束

计数为0时,8237A撤销DACK信号,CPU收回总线控制权。

四、 常用I/O接口芯片:连接外设的“桥梁”

除了中断和DMA,微机原理及应用第20讲还涵盖了常用的并行和串行接口芯片。这些芯片解决了CPU与外设之间速度、电平、数据格式不匹配的问题。

4.1 8255A可编程并行接口

8255A是最常用的并行接口芯片,包含A、B、C三个端口,可通过编程选择工作方式(方式0:基本输入输出;方式1:选通输入输出;方式2:双向总线)。

4.2 8253/8254可编程定时器/计数器

用于产生精确的时间延迟、方波信号或作为实时时钟。每个通道可工作在6种方式下,如方式3(方波发生器)和方式2(分频器)。

4.3 8251A可编程串行通信接口

用于实现异步或同步串行通信,支持波特率生成、数据帧格式配置等。是串口通信(如RS-232)的核心芯片。

? 8255A应用示例

控制LED显示、读取键盘矩阵、连接打印机等。常用于实验箱的基础I/O扩展。

⏱️ 8253应用示例

产生1ms定时中断、PWM波形生成、音频频率合成等。

? 8251A应用示例

PC串口通信、Modem控制、工业现场总线通信等。

五、 考研复习与实战指南

对于准备考研的同学,微机原理及应用第20讲的内容在《计算机组成原理》和《微机接口技术》科目中占据重要地位。以下是高频考点总结:

5.1 高频考点清单

5.2 典型真题解析

题目:设8259A主片的OCW2写入值为90H,问此时发生了什么操作?

解析:90H二进制为1001 0000B。OCW2的D7-D5为100,表示是OCW2。D4-D2为010,表示ISR中最低位置1为EOC。D1-D0为00,表示特定中断结束。因此,该操作是将ISR中最低位置1的中断标记为结束。

5.3 编程实战建议

建议在实验环境中,使用汇编语言编写完整的中断服务程序,包括保护现场、处理逻辑、恢复现场和IRET。同时,尝试配置8255A实现LED流水灯,或通过8253产生定时中断实现秒表功能。

七、 常见问题解答(FAQ)

Q: 微机原理第20讲中,中断向量表是如何组织的?

在8086系统中,中断向量表位于内存的最低1KB区域(00000H-003FFH)。每个中断向量占4个字节,其中前两个字节存储中断服务程序的偏移地址,后两个字节存储段地址。系统中共有256个中断向量,对应0-255号中断。

Q: 8259A中断控制器初始化需要设置哪些命令字?

8259A初始化通常需要设置4个初始化命令字(ICW1-ICW4)。ICW1确定边沿/电平触发及级联模式;ICW2设置中断类型码基值;ICW3用于级联配置;ICW4设置工作模式(如8086模式、自动结束中断等)。

Q: DMA传输相比中断传输有哪些优势?

DMA(直接存储器访问)传输允许外设与内存之间直接进行高速数据交换,无需CPU干预指令执行。相比中断传输,DMA减少了CPU的中断响应开销,提高了数据传输效率,特别适合大批量数据的高速传输场景,如磁盘读写。

Q: 如何判断中断服务程序是否执行完毕?

在中断服务程序末尾,必须执行IRET指令。对于8259A,还需要发送EOC(中断结束)命令,以清除ISR中对应的位。只有当ISR中该位被清除,CPU才能响应同一级别的中断请求。

八、 总结与展望

通过微机原理及应用第20讲的学习,我们深入理解了中断系统和接口技术的基本原理。从8086的中断向量表到8259A的编程,从DMA的高速传输到8255A/8253/8251的具体应用,这些知识构成了微机系统硬件层面的核心骨架。

掌握这些内容,不仅有助于应对考试,更为后续学习操作系统、嵌入式系统开发以及计算机体系结构打下了坚实基础。建议同学们结合实验,亲手编写中断服务程序和接口控制程序,将理论知识转化为实践能力。

希望本讲内容能帮助你彻底攻克微机原理及应用第20讲的难点。如有疑问,欢迎在评论区讨论。

◆ 最新
●基因组dna提取原理(基因组DNA提取原理)●软轴水泵原理(软轴水泵工作原理)●尿素罐的工作原理(尿素罐如何工作)●动画演示飞机起飞原理(动画演示飞机起飞)●家用太阳能发电系统原理(家用太阳能发电原理)●定风量阀原理(定风量阀工作原理)●电子秤原理和电路图(电子秤原理及电路图)●皮带传送带原理图(传送带工作原理图)●74ls161功能原理(74LS161原理)●halftonemask原理(半调掩模原理)●摆线针轮减速机原理3d(摆线针轮减速机3D原理)●安卓群控软件原理(安卓群控技术解析)●红外线摄影原理(红外线成像原理)●nat的工作原理(NAT工作原理)●纳米无痕双眼皮的原理(纳米无痕双眼皮原理)●锁相晶振原理(锁相环晶振原理)●球阀原理3d动画演示(球阀原理3D动画)●磁悬浮是什么原理(磁悬浮原理)●计算机软件工作原理(计算机软件运行原理)●扭扭车前进原理(扭扭车前行机制)●波纹管截止阀工作原理(波纹管截止阀原理)●工业制冷机工作原理(工业制冷机制冷原理)●铁锅炖灶台原理(铁锅炖灶台运作机制)●断路器工作原理动态图(断路器原理动态图解)●魔术通天绳原理图解(通天绳魔术揭秘)●原神柱子解密原理(原神柱子解谜机制)●摊铺机平衡梁工作原理(摊铺机平衡梁原理)●马桶止回阀工作原理(马桶止回阀运作机制)●四极杆质谱仪原理(四极杆质谱仪原理)●vue nexttick实现原理(Vue nextTick原理)●hdmi热插拔检测原理(HDMI热插拔原理)●连续式裂解设备原理(连续裂解设备原理)●protocolbuffer原理(ProtocolBuffer底层机制)●驱狗神器的工作原理(驱狗神器原理)●编译原理pdf第一版(编译原理第一版)●擀面杖吹火原理(擀面杖吹火无气孔)●按摩减肥法的原理(按摩减肥原理)●普通电镀原理(普通电镀机理)●自动温控风口工作原理(温控风口原理)●微核试验的原理(微核试验原理)●毛细管柱的分离原理(毛细管柱分离原理)●助勃药品是什么原理(助勃药作用机制)●液相色谱泵的工作原理(液相色谱泵原理)●鸭嘴式液位开关原理(鸭嘴液位开关工作原理)●kms服务器原理(KMS服务器运作机制)●胶版印刷机的原理(胶印机工作原理)●雾炮机结构原理图(雾炮机结构示意图)●计算器计算原理(计算器运算机制)●拉粒螺杆原理(拉粒螺杆工作机制)●电阻触摸屏原理(电阻屏工作原理)●霍尔传感器工作原理图(霍尔传感器原理图)●macd原理图解(MACD图解)●超声刀操作原理视频(超声刀工作原理)●压轨器原理(压轨器作用机制)●repository原理(仓库原理)●自助洗车机原理(自助洗车机工作原理)●逆卡诺原理(逆卡诺循环)●新能源电车维修原理(新能源电动车修车原理)●带式过滤机工作原理(带式过滤机原理)●网赚原理(流量变现的逻辑)●自力式平衡阀工作原理(自力式平衡阀原理)●7805稳压管工作原理(7805稳压原理)●交流接触器原理和详细接线法(交流接触器原理与接线)●液压机维修原理图(液压机维修示意图)●电磁继电器工作原理(电磁继电器原理)●汽车电动机的工作原理(电机如何驱动汽车)●空气泵工作原理动画(空气泵工作动画)●ph灯原理(PH灯工作原理)●卷闸门锁工作原理图(卷闸门锁原理)●蛋白质组学原理(蛋白质组学基础)●熔盐光热发电原理(熔盐储热发电原理)●载人航天飞船发射原理(载人飞船发射原理)●磁悬浮地球仪自转原理(磁悬浮地球自转机制)●防腐电磁阀工作原理(防腐电磁阀原理)●悬架减振器原理(减振器工作原理)●直缝焊机工作原理视频(直缝焊机工作原理)●球头柱塞工作原理(球头柱塞如何工作)●呼吸面罩原理图解(呼吸面罩工作原理图)●倚兰净水器原理(倚兰净水器工作原理)●激光焊接机原理图(激光焊接机工作原理)●化妆品补水原理(化妆品补水机制)●hpv检测原理(HPV检测原理)●牙齿美白仪是什么原理(牙齿美白仪原理)●除铁器pdc-8原理图(PDC-8除铁器原理)●油漆渣烘干机原理(油漆渣烘干机工作原理)●datareader原理(DataReader底层机制)●空调机组除湿原理(空调机组除湿原理)●挂单与成交原理(挂单成交机制)●数字温湿度计的原理(数字温湿度计工作原理)●行星式球磨机原理(行星式球磨机工作原理)●蒸发冷却器工作原理(蒸发冷却器原理)●技术开锁原理动图(技术开锁原理动画)●燃气灶点火针原理图解(燃气灶点火针原理)●甲酸甲酯结构原理(甲酸甲酯结构解析)●细胞凋亡试剂盒的原理(凋亡检测原理)●高防服务器配置原理(高防服务器配置原理)●手动液压控制阀原理图(手动液压阀原理)●霍尔式位移传感器的工作原理(霍尔位移传感器原理)●旋流燃烧器工作原理(旋流燃烧器原理)
德文笔记
蜀ICP备2026018065号-5