微机原理及应用第八章中断系统.docx

上传人:b****6 文档编号:12984644 上传时间:2023-06-09 格式:DOCX 页数:17 大小:84.02KB
下载 相关 举报
微机原理及应用第八章中断系统.docx_第1页
第1页 / 共17页
微机原理及应用第八章中断系统.docx_第2页
第2页 / 共17页
微机原理及应用第八章中断系统.docx_第3页
第3页 / 共17页
微机原理及应用第八章中断系统.docx_第4页
第4页 / 共17页
微机原理及应用第八章中断系统.docx_第5页
第5页 / 共17页
微机原理及应用第八章中断系统.docx_第6页
第6页 / 共17页
微机原理及应用第八章中断系统.docx_第7页
第7页 / 共17页
微机原理及应用第八章中断系统.docx_第8页
第8页 / 共17页
微机原理及应用第八章中断系统.docx_第9页
第9页 / 共17页
微机原理及应用第八章中断系统.docx_第10页
第10页 / 共17页
微机原理及应用第八章中断系统.docx_第11页
第11页 / 共17页
微机原理及应用第八章中断系统.docx_第12页
第12页 / 共17页
微机原理及应用第八章中断系统.docx_第13页
第13页 / 共17页
微机原理及应用第八章中断系统.docx_第14页
第14页 / 共17页
微机原理及应用第八章中断系统.docx_第15页
第15页 / 共17页
微机原理及应用第八章中断系统.docx_第16页
第16页 / 共17页
微机原理及应用第八章中断系统.docx_第17页
第17页 / 共17页
亲,该文档总共17页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

微机原理及应用第八章中断系统.docx

《微机原理及应用第八章中断系统.docx》由会员分享,可在线阅读,更多相关《微机原理及应用第八章中断系统.docx(17页珍藏版)》请在冰点文库上搜索。

微机原理及应用第八章中断系统.docx

微机原理及应用第八章中断系统

第八章:

中断系统

输入,输出设备是人机交换信息的必要外设.,中断控制方式是CPU经I/O接口与外设传送数据的最佳方式,CPU被动响应外设的中断请求,提高CPU的工作效率

§8.18086CPU的中断结构

一:

8086CPU的中断源

1:

内部中断源(软中断)

由中断指令INT获得的中断

2:

外部中断源(硬中断)

A:

非屏蔽中断源——8086CPU引脚NMI获得上升沿触发

B:

可屏蔽中断源——8086CPU引脚INTR获得高电平触发

二:

8086CPU中断优先级别

1:

软中断

2:

不可屏蔽中断NMI

3:

可屏蔽中断INTR

三:

8086CPU中断处理过程(311页图2.8)

1:

CPU获得中断请求

2:

CPU执行完当前指令

3:

CPU判断中断请求的优先级别

4:

保护现场,F,CS,IP入栈

5:

CPU执行中断服务程序

6:

恢复现场,IP,CS,F出栈

7:

CPU执行下一条指令

重复1~7

四:

中断向量表的设置

将中断服务程序的入口地址置入中断向量表中

1:

编程写入法

A:

数据段定义法

DATASEGMENTAT0000H;定义数据段(DS)=0000H

ORGn*4;n为中断类型号

SUBDWnoffset;中断服务程序的入口IP

DWnseg;中断服务程序的入口CS

DATAENDS

B:

指令传送法

DATASEGMENTAT0000H

ORGn*4

SUBDW2DUP(?

DATAENDS

CODESEGMENT

ASSUMECS:

CODE,DS:

DATA

MOVAX,DATA

MOVDS,AX

MOVSUB,noffset;中断服务程序的入口IP

MOVSUB+2,nseg;中断服务程序的入口CS

2:

INT21H功能设置法

A:

置中断向量功能

1):

功能号25H→AH

2):

中断号n→AL

3):

入口参数中断服务程的入口地址CS:

IP→DS:

DX

4):

INT21H

注:

中断服务程的入口地址CS:

IP值将放入

中断向量表的n*4处连续4个存储单元中

B:

读中断向量功能

1):

功能号35H→AH

2):

中断号n→AL

3):

INT21H

4):

出口参数ES:

BX

注:

ES:

BX中为中断号n的中断服务程的入口地址CS:

IP值

《例》某中断服务程序的中断号为40H,

中断服务程序的入口地址CS:

IP=3500H:

4830H,

用INT21H功置中断向量到中断向量表

解:

MOVAH,25H

MOVAL,40H

PUSHDS;下述指要用DS,故暂时放入堆栈

MOVAX,3500H

MOVDS,AX;(DS)=(CS)=3500H

MOVDX,4830H;(DX)=(IP)=4830H

INT21H

POPDS;恢复原DS值

中断向量表中的数据

30H

48H

00H

35H

40H*4

§8.2外部中断方式

一:

PC/XT的外部中断源

314页图8.3示外部中断源

二:

INTR中断源

1:

8259A与8个外部中断源

A:

8253定时器,键盘中断源直接到主机板

B:

其余6个中断源经扩展槽到主机板

2:

8259A与8086CPU的连接

A:

8259A获得外部中断请求

B:

8259A的INT=H输出

C:

8086CPU的INTR=H,获得中断请求输入

3:

中断请求,中断屏蔽,中断响应

A:

中断请求——输入INTR←H

B:

中断屏蔽——清中断屏蔽控制标志位IF=0

中断允许——置中断屏蔽控制标志位IF=1

C:

中断无响应——若IF=0,输出/INTA=H

中断有响应——若IF=1,输出/INTA=L

4:

INTR的中断过程

A:

8086CPU引脚INTR←H

B:

程序判断中断控制标志IF的值

C:

若IF=0,8086CPU引脚/INTA→H,无中断响应

D:

若IF=1,8086CPU引脚/INTA→L,有中断响应

E:

程序判断多中断优先级

F:

执行中断类型号08H~0FH中的一个中断服务程序

注:

对可屏蔽中断,当中断请求有效时,

要获得中断响应的条件是置IF=1

三:

NMI中断源

1:

PC/XT的NMI外部中断源

2:

NMI中断请求NMI←

3:

NMI无中断响应输出,NMI与标志位IF无关

4:

NMI的中断过程

A:

8086CPU的引脚NMI←

B:

执行02H中断类型号中断服务过程

§8.3中断优先级管理

当外部中断源为多个时,必须定义其优先级别并对其管理

一:

软件查询法

1:

硬件电路

A:

多中断源输入

B:

或门输出接8086CPU的INTR

2:

功能

A:

输入中断源有一个为高时输出为高

B:

可屏蔽中断请求由多中断源提供

3:

优先级流程法

先判断那一个输入中断源,则此中断源优先级最高

二:

硬件菊花链法

由数字逻辑电路构成优先级电路,现己不常用

三:

专用芯片法

软件法,硬件法的结合——可编程中断控制器

§8.4可编程中断控制芯片——8259A

✓特点A:

可程序控制芯片的功能

B:

可提供中断源的中断类型码

C:

可屏蔽输入端的中断源

✓形式A:

单片方式——有8个中断源

B:

级联方式——最多64个中断源

一:

8259A的结构及功能

1:

8259A的内部逻辑结构

A:

中断请求寄存器——IRR

1):

可输入IR0~IR8共8个外部中断源

2):

IRR寄存器中的值可经DB读入CPU

注:

IRR有口地址,即可编程读

B:

中断服务寄存器——ISR

1):

为中断源IR0~IR8服务,为CPU服务

若IRR请求,CPU响应,则ISR中相对应位为1

若中断服务程序结束,则ISR中相对应位为0

2):

ISR寄存器中的值可经DB读入CPU

注:

ISR有口地址,即可编程读

C:

中断屏蔽寄存器——IMR

1):

IMR中IMR0~IMR7与IRR中IR0~IR7位对应

若IMRn=1,则对应中断源IRn屏蔽

若IMRn=0,则对应中断源IRn允许

2):

寄存器IMR与中断标志IF的区别

IMR屏蔽IRR,当IMRn=1时

IF屏蔽CPU的中断请求INTR,当IF=0时

IF的级别比IMR高

3):

IMR寄存器与CPU间可经DB读写操作

注:

IMR有口地址,即可编程读写

D:

优先权分析器——PR

1):

对IRR中的IRR0~IRR7中断源进行优先权分析

2):

IRR0~IRR7的优先权分配可编程确定

注:

PR有口地址,即可编程写

E:

芯片控制逻辑

1):

8259A的中断请求INT→8086CPU的INTR

2):

8086CPU的/INTA→8259A的/INTA

F:

芯片读写逻辑

1):

8259A的片内地址线仅有A0(一线二址)

注:

学习8259A的难点,解决多寄存器读写与一线两址的矛盾

2):

8259A的片选线/CS由地址译码产生

注:

PC/XT微机中8259A的地址为20H,21H

3):

8259A的读写线/RD,/WR直接与8086CPU的/RD,/WR连接

G:

芯片数据线

8259A的数据线为8位即D0~D7

H:

芯片的级联线

1):

当外部中断源≤8个时,仅有单片8259A

当外部中断源>8个时,需用多片8259A级联

2):

级联线仅在8259A级联方式下有作用

注:

级联线CAS0~CAS2,/EN即/SP接线方式

2:

8259A的引脚图

A:

8259A为DIP28封装

B:

8259A为+5V供电

二:

8259A的中断优先权

中断源IR0~IR7的优先权序可编程确定

1:

固定优先权(完全嵌套方式)

A:

优先权序IR0(高)→IR7(低)

B:

该优先权序始终不变

2:

等优先权(普通循环方式)

A:

初始优先权序IR0(高)→IR7(低)

B:

若响应了IRn中断,则IRn中断权最低,IRn-1中断权最高

C:

每个中断优先权相同

3:

特殊优先权(特殊循环方式)

A:

初始优先权序由编程确定

若定义IR5为初始最高优先权,

则初始优先权序IR5→IR7→IR0→IR4

B:

其后工作同等优先权

三:

中断源IR0~IR7的中断触发方式

1:

电平触发方式——IR0~IR7输入高电平有效

A:

现象——中断源持续高电平

B:

问题——造成连续中断请求

C:

解决——在中服程序中令IF=0

2:

边沿触发方式——IR0~IR7输入上升沿有效

A:

特点——IRR寄存器锁存触发信号

B:

脉宽——上升沿脉冲宽度符合要求

C:

方法——采用负脉冲的后沿触发

四:

8259A的初始化命令字和操作命令字

✓若要使用8259A,必须按规定向其写入初始化命令字

使8259A进入工作状态(一般由系统程序完成)

✓若要改变8259A的功能,可随时向其写入操作命令字

使8259A按要求工作(一般由用户程序完成)

(一):

8259A口地址讨论

1:

8259A实际口地址

一线二址,址1—A=0,址2—A=1

2:

8259A操作口地址

A:

4个写初始化命令字操作

B:

3个写操作命令字操作

C:

3个读寄存器IRR,ISR,IMR操作

D:

1个读中断类型号操作

注:

2个地址怎样完成11个读写操作

3:

地址分配表及应用特点

 

表8.28259A的读写操作

A0

对应的读/写操作

0

0

1

0

读IRR、ISR或中断状态查询码

1

0

1

0

读IMR

0

1

0

0

写OCW2、OCW3或ICW1

1

1

0

0

写OCW1、ICW2、ICW3或ICW4

×

1

1

0

无操作,数据线呈高阻态

×

×

×

1

无操作,数据线呈高阻态

A:

A0=0时的读操作,IRR,ISR,中断类型号→CPU

注:

解决1址3读问题,用位控制定义读入法

B:

A0=1时的读操作,仅IMR→CPU

C:

A0=0时的写操作,CPU→OCW2,OCW3,ICW1

注:

解决1址3写问题,用同址顺序写入法

D:

A0=1时的写操作,CPU→OCW1,ICW2,ICW3,ICW4

注:

解决1址4写问题,用位识别写入法

(二):

初始化命令字ICW的写入方法

1:

ICW1~ICW4的写入流程

A:

ICW1,ICW2为必写初始化命令字

ICW3,ICW4为选写初始化命令字

B:

ICW2,ICW3,ICW4采用同址顺序写入法

2:

ICW1——芯片控制初始化命令字

A:

口地址A0=0,PC/XT口地址=20H

B:

位定义

1):

D4=1为同址识别位

注:

若D4=1CPU对ICW1命令字写操作

若D4=0CPU对0CW2,OCW3命令字写操作

2):

D0=0不写ICW4命令字

D0=1要写ICW4命令字

3):

D1=0多片8259A方式,要写ICW3命令字

D1=1单片8259A方式,不写ICW3命令字

4):

D3=0IR0~IR7为边沿触发方式

D3=1IR0~IR7为电平触发方式

5):

D2,D5,D6,D7位不用(8086CPU时)

3:

ICW2——中断类型号初始化命令字

A:

口地址A0=1,PC/XT口地址=21H

B:

位定义

1):

D2~D0IR0~IR7的编码,即中断类型号的低3位

2):

D7~D3中断类型号的高5位

注:

中断类型号的高5位由用户编程定义,

中断类型号的低3位自动产生,保证IR0~IR7连续

《例》定义8259A的8个中断类型号为08H~0FH

解:

08H=00001000B,0FH=00001111B

低3位为000B~111B表示中断源IR0~IR7的编码

高5位为00001B

MOVAL,08H

OUT21H,AL

4:

ICW3——主/从8259A初始化命令字

A:

写操作条件在ICW1中,D1=0

B:

口地址A0=1,PC/XT口地址=21H

C:

写操作方法同址顺序写入法

注:

ICW2,ICW3,ICW4,OCW1均为同址(A0=1),写顺序为

写ICW2→写ICW3(若要)→写ICW4(若要)→写OCW1

D:

主8259A位定义

1):

若D0~D7为1,则IR0~IR7对应端接有从8259A芯片

2):

若D0~D7为0,则IR0~IR7对应端未接从8259A芯片

E:

从8259A位定义

1):

D2~D0从8259A的INT端接主8259A的IRn端编码

2):

D7~D3未用

5:

ICW4——方式控制初始化命令字

A:

写操作条件在ICW1中,D0=1

B:

口地址A0=1,PC/XT口地址=21H

C:

写操作方法同址顺序写入法

D:

位定义

1):

D0=0用于8080CPU

D0=1用于8086CPU

2):

D1=0普通,特殊EIO结束方式

D1=1自动EIO结束方式

3):

D3,D2=00,01级联非缓冲方式

D3,D2=10,11级联缓冲方式

4):

D4=0单片8259A固定优先权

D4=1级联8259A固定优先权

5):

D7~D5未用

《例》PC/XT系统BIOS对8259A的初始化命令字写入程序

MOVAL,00010011B;D0=1,要写ICW4,D1=1,不写ICW3

OUT20H,AL;写ICW1,D3=0,IR0~IR7为边沿触发方式

MOVAL,00001000B;IR0~IR7对应中断类型号为08H~0FH

OUT21H,AL;写ICW2

MOVAL,00001001B;D0=1,8086方式,D1=0,非自动EIO

OUT21H,AL;写ICW4,,D4=0,固定优先权

(三):

操作命令字OCW的写入方法

注:

ICW按顺序写入(先写),OCW按需要写入(后写)

1:

OCW1——写IMR寄存器命令字

A:

口地址A0=1,PC/XT口地址=21H

B:

位定义

1):

D0~D7对应寄存器IMR中的IMR0~IMR7

2):

Dn=0对应中断源IRn中断允许

Dn=1对应中断源IRn中断屏蔽

2:

OCW2——中断优先权选择命令字

注:

ICW4可定义8259A工作于固定优先权,8259A的

等优先权,特殊优先权在此定义

A:

口地址A0=0,PC/XT口地址=20H

B:

识别位D4,D3=0,0(同址识别位法,对OCW2,OCW3)

C:

位定义

1):

D2~D0特殊优先权中断源IRn编码

2):

D6=0自动循环优先权

D6=1特殊循环优先权

3):

D7=0固定优先权

D7=1循环优先权

注:

仅当D6=1,D7=1时,D2~D0值才有意义

4):

D5=0自动EIO结束方式

D5=1非自动EIO结束方式

3:

OCW3——运行方式命令字

A:

口地址A0=0,PC/XT口地址=20H

B:

识别位D4,D3=0,1(同址识别位法,对OCW2,OCW3)

C:

位定义

1):

D2=0CPU下次同址读操作读入IRR,ISR中的值

D2=1CPU下次同址读操作读入中断类型号的值

2):

D1,D0=00,01无意义

D1,D0=10CPU下次同址读操作读入IRR中的值

D1,D0=11CPU下次同址读操作读入ISR中的值

3):

D6,D5级联方式下中断屏蔽的应用(约)

4):

D7未用

(四):

8259A的读操作方法

1:

读IMR寄存器

A:

口地址A0=1,PC/XT口地址=21H

B:

地址唯一,无同址

2:

读IRR寄存器

A:

口地址A0=0,PC/XT口地址=20H

B:

条件先写OCW3中的D2,D1,D0=010

3:

读ISR寄存器

A:

口地址A0=0,PC/XT口地址=20H

B:

条件先写OCW3中的D2,D1,D0=011

4:

读中断类型号

A:

口地址A0=0,PC/XT口地址=20H

B:

条件先写OCW3中的D2=1

C:

读入数据位定义

1):

D7=0无中断请求IR0~IR7

D7=1有中断请求IR0~IR7

2):

D2~D0为IR0~IR7编码(当D7=1时)

3):

D6~D3未用

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 小学教育 > 语文

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2