微机原理第八章中断

合集下载

中断请求的定义微机原理

中断请求的定义微机原理

中断请求的定义微机原理中断请求(Interrupt Request,简称IRQ)是指在微机系统中,外部设备发生了某种特定的事件或状态变化时,向CPU发送中断信号,请求CPU暂停当前的工作,并跳转到相应的中断服务程序中去处理这个事件或状态变化。

在微机系统中,外设与CPU之间通过总线连接,外设发出的中断请求是通过硬件电路与总线相连的电线上的电压信号来表示的。

当外设发生了特定的事件或状态变化时,它会通过电线上的电压信号来告知CPU,这个信号就是中断请求信号。

CPU在执行当前的指令时,会不断地检测这个中断请求信号,一旦检测到了中断请求信号,就会立即中断当前的工作,进入相应的中断服务程序中去处理。

中断请求的定义实际上包括了两个方面的内容:中断源和中断服务程序。

中断源(Interrupt Source)是指可能会发出中断请求的外设,例如键盘、鼠标、硬盘等。

中断源可以是硬件设备,也可以是由软件模拟出来的虚拟设备。

中断服务程序(Interrupt Service Routine,简称ISR)是指处理中断请求的程序,当中断请求被触发时,CPU会暂停当前的工作,转去执行相应的中断服务程序。

中断服务程序通常是由操作系统负责编写的,可以根据中断源的不同设置不同的中断处理程序。

在实际应用中,不同的中断请求信号会被分配不同的优先级,高优先级的中断请求会先被处理,而低优先级的中断请求将会在高优先级中断处理完毕后再进行处理。

这种优先级的分配可以通过硬件的方式实现,也可以通过软件的方式实现。

例如,在使用8259A可编程中断控制器的系统中,可以通过设置中断控制器上的硬件引脚的优先级来实现不同中断请求的优先级控制。

中断请求的处理过程一般包括以下几个步骤:1. 当外设发生了特定的事件或状态变化时,会产生相应的中断请求信号,将该信号送入CPU。

2. CPU会不断地检测中断请求信号,如果检测到了中断请求信号,就会立即中断当前的工作,保存当前的执行现场(包括程序计数器、标识寄存器等),并跳转到相应的中断服务程序中去执行。

微机原理第八章 串行通信及串行接口

微机原理第八章 串行通信及串行接口

1. 可编程串行接口典型结构
✓状态寄存器
✓控制寄存器
✓数据输入寄存器--串行输入/并行 输出移位寄存器
✓数据输出寄存器--并行输入/串行 输出移位寄存器
2. 串行通信基本概念
在串行通信时,数据和联络信号使用同一条信号线 来传送,所以收发双方必须考虑解决如下问题: ❖ 波特率---双方约定以何种速率进行数据的发送和接收 ❖ 帧格式---双方约定采用何种数据格式 ❖ 帧同步---接收方如何得知一批数据的开始和结束 ❖ 位同步--- -接收方如何从位流中正确地采样到位数据 ❖ 数据校验--- -接收方如何判断收到数据的正确性 ❖差错处理---收发出错时如何处理 收发双方必须遵守一些共同的通信协议才能解决上述问题。
串行通信适于长距离、中低速通信
并行通信
将数据的各位同时在多根并行传输线上进行传输。
D0 0
D1 1
D2 0

D3 1
D4 D5
0 1
D6 1
D7 0
D0 D1 D2 D3 目 D4 的 D5 D6 D7
数据的各位同时由源到达目的地 → 快 多根数据线 → 短距离(远程费用高)
并行通信适于短距离、高速通信
工作方式下。
(8)错误检测 • 传输错误 • 覆盖错误
二、 接口与系统的连接
从结构上,可把接口分为两个部分,其中和 外设相连的接口结构与具体外设的传输要求及数 据格式相关,因此,各接口的该部分互不相同; 而与系统总线相连的部分,各接口结构类似,一 般都包括:
1. 总线收发器和相应的逻辑电路
2. 联络信号逻辑电路
接收端需要一个时钟来测定每一位的
时间长度。
波特率/位传输率---每秒传输的离散信号 的数目/每秒传输的位数。 波特率因子---

微机原理与接口技术——中断系统

微机原理与接口技术——中断系统

2、内部中断——软件中断
内部中断指由指令的执行或软件对标志寄存器中 某个标志的设置产生的中断
专用中断
指令中断
内部中断的种类
(1)除法出错中断 类型号为00H
除法出错中断既不是外部硬件产生,也不是用 软件指令产生,而是CPU自身产生的,因此0型中 断没有对应的中断指令,即指令系统中没有INT 0 这条指令。
30~3FH 40~FFH
DOS保留使用 DOS内部使用 DOS保留使用 用户自定义
DOS 可调用
1、外部中断——硬件中断
1、非屏蔽中断(NMI):不受中断标志位的控制,中断类型 号为2,所以中断向量放在0000:0008开始的4个单元中。NMI 中断一般用于紧急情况的处理,不受中断标志位IF影响 。 2、可屏蔽中断(INTR):受中断标志位的控制,IF=1, CPU才能响应INTR中断。CPU响应INTR中断时,往INTA引 脚上发两个负脉冲,外设接到第二个负脉冲后,立即往数据总 线上送出中断类型码,供CPU读取。
中断源
引起CPU中断的事件,发出中断请求的来源。
异常中断 内部中断
软件中断
异常事件引起 中断指令引起
可屏蔽中断 外部中断
非屏蔽中断
INTR中断 NMI中断
引入中断的原因
提高数据传输率; 避免了CPU不断检测外设状态的过程,提高了
CPU的利用率。 实现对特殊事件的实时响应。
中断系统
中断系统是指实现中断功能的软硬件的统称。功 能有: 正确识别中断请求,实现中断响应、中断处理
INTR
IRQ0 系统定时器 IRQ1 键盘 IRQ2 彩色/图形接口
8259A
IRQ3 保留(串口) IRQ4 串口
IRQ5 保留(LPT)

微机原理上机实验(八+十二)实验报告 8086中断实验 步进电机实验

微机原理上机实验(八+十二)实验报告 8086中断实验 步进电机实验

微机原理上机实验报告实验八:8086中断实验实验十二:步进电机实验微机原理上机实验(八)实验报告实验八:8086中断实验一、实验目的1、了解8086内部响应中断的机制;掌握中断向量的作用。

2、利用实验仪上单脉冲、74HC244电路,不使用8259,实现一个中断实例。

3、复习本节实验内容,可尝试自行编写程序,做好实验准备工作,填写实验报告。

二、实验内容1、编制程序:拨动单脉冲开关,“”送给8086的INTR,触发中断;8086通过INTA信号,读取中断向量;8086计数中断次数,显示于F5区的数码管上注意:给INTR高电平信号,8086就会相应中断,所以实验开始前,保证单脉冲开关给8086低电平;中断程序中,加一个较长的延时程序,在中断结束前,有时间拨动单脉冲开关,恢复给8086低电平。

三、实验原理图本实验,通过F4区的8个拨动开关,给74HC244设定中断向量;本实验的中断向量是08H,即IN7-IN0位数据是00001000。

同学可以自定义中断向量,实验程序中处理中断向量部分程序作相应调整四、实验步骤1、连线说明:B4区:CS244、BLE ——C1区:GNDB4区:RD(IO区)——A3区:INTAA3区:INTR ——B2区:单脉冲B4区:JP57(D0..D7) ——A3区:JP41B4区:JP52(IN0..7) ——F4区:JP27(1..8)D3区:CS、A0、A1 ——A3区:CS1、A0、A1D3区:PC0、PC1 ——F5区:KL1、KL2D3区:JP20、B、C ——F5区:A、B、C2、运行程序3、实验开始前,保证单脉冲开关给8086低电平;运行程序;向下拨动开关(触发中断),立即向上拨动开关,产生一个“”,观察结果,数码管上显示的次数与拨动开关次数是否对应。

五、实验代码EXTRN InitKeyDisplay:NEAR, Display8:NEAR_STACK SEGMENT STACKDW 100 DUP(?)_STACK ENDS_DATA SEGMENT WORD PUBLIC 'DATA'BUFFER DB 8 DUP(?)Counter DB ?ReDisplayFlag DB 0_DATA ENDSCODE SEGMENTSTART PROC NEARASSUME CS:CODE, DS:_DATA, SS:_STACKMOV AX,_DATAMOV DS,AXMOV ES,AXNOPCALL InitKeyDisplay ;对键盘、数码管控制器8255初始化CALL WriIntverMOV Counter,0 ;中断次数MOV ReDisplayFlag,1 ;需要显示STI ;开中断START1: LEA SI,BufferCALL Display8CMP ReDisplayFlag,0JZ START1CALL LedDisplayMOV ReDisplayFlag,0JMP START1WriIntver PROC NEARPUSH ESMOV AX,0MOV ES,AXMOV DI,20HLEA AX,INT_0STOSWMOV AX,CSSTOSWPOP ESRETWriIntver ENDPLedDisplay PROC NEARMOV AL,CounterMOV AH,ALAND AL,0FHMOV Buffer,ALAND AH,0F0HROR AH,4MOV Buffer + 1,AHMOV Buffer + 2,10H ;高六位不需要显示MOV Buffer + 3,10HMOV Buffer + 4,10HMOV Buffer + 5,10HMOV Buffer + 6,10HMOV Buffer + 7,10HRETLedDisplay ENDPINT_0: PUSH DXPUSH AXMOV AL,CounterADD AL,1DAAMOV Counter,ALMOV ReDisplayFlag,1CALL LedDisplayDELAY: PUSH BXPUSH CXPUSH DIPUSH SIMOV CX,20DELAY1: LEA SI,BufferCALL Display8loop DELAY1POP SIPOP DIPOP CXPOP BXPOP AX六、实验思考题1.绘制本实验的详细实验电路图?微机原理上机实验(十二)实验报告实验十二:步进电机实验一、实验目的1、了解步进电机的基本原理,掌握步进电机的转动编程方法2、了解影响电机转速的因素有那些二、实验内容编写程序:使用F5区的键盘控制步进电机的正反转、调节转速,连续转动或转动指定步数;将相应的数据显示在F5区的数码管上。

微机原理习题答案8章

微机原理习题答案8章

第8章中断系统与可编程中断控制器8259A1.什么叫中断?8086微机系统中有哪几种不同类型的中断?答:在CPU执行程序的过程中,由于某个事件的发生,CPU暂停当前正在执行的程序,转去执行处理该事件的一个中断服务程序,待中断服务程序执行完成后,CPU再返回到原被中断的程序继续执行。

这个过程称为中断。

8086微机系统中有3种中断:1)外部可屏蔽中断。

2)外部不可屏蔽中断。

3)内部中断2.什么是中断类型?它有什么用处?答:通常用若干位二进制编码来给中断源编号,该编号称为中断类型号。

8086微处理器用8位二进制码表示一个中断类型,有256个不同的中断。

这些中断可以划分为内部中断、外部不可屏蔽中断、外部可屏蔽中断三类。

用处:使CPU识别中断源,从而能正确地转向该中断源对应的中断服务程序入口。

3.什么是中断嵌套?使用中断嵌套有什么好处?对于可屏蔽中断,实现中断嵌套的条件是什么?答:微处理器在处理低级别中断的过程中,如果出现了级别高的中断请求,微处理器停止执行低级中断的处理程序而去优先处理高级中断,等高级中断处理完毕后,再接着执行低级的未处理完的程序,这种中断处理方式成为中断嵌套。

使用中断嵌套的好处是能够提高中断响应的实时性。

对于某些对实时性要求较高的操作,必须赋予较高的优先级和采取中断嵌套的方式,才能保证系统能够及时响应该中断请求。

对于可屏蔽中断,实现中断嵌套的条件有:(1)微处理器处于中断允许状态(IF=1)(2)中断请求的优先级高于正在执行的中断处理程序的优先级。

(3)中断请求未被8259屏蔽。

(4)没有不可屏蔽中断请求和总线请求。

4.什么是中断向量?中断类型号为1FH的中断向量为2345H:1234H,画图说明它在中断向量表中的存放位置。

答:中断向量为每个中断服务子程序的入口地址,为32位(16位的偏移地址和16位的段地址),在中断向量表中占用4个地址单元。

在8086CPU组成的计算机系统中,采用最低的1024个地址单元(称为0页)来存储中断向量。

微机原理(中断概念)

微机原理(中断概念)
IP
0080H
007FH
CS
Type 31
IP
007CH
:
CS
Type 5
IP
0014H
0013H
CS
Type 4
IP
CS
Type 3
IP
IP
IP
CS
CS
CS
0010H
000FH
000CH
000FH
0008H
0007H
0004H
0003H
Type 8
Type 1
Type 0
:
224
保 留 27 个
计算机在运行过程中,往往会出现事先预料不到的情况,或出现一些故障:如电源突跳,存储出错,运算溢出等等。计算机就可以利用中断系统自行处理,而不必停机或报告工作人员。
外设中断请求 实时时钟中断请求 控制对象中断源 故障引起的中断 人为设置的中断
人为设置的中断,不是随机的,故称为自愿中断。
寻找中断服务程序入口地址
中断响应
保护现场 保护中断服务程序中用到的寄存器和状态标志的内容 中断服务程序 相应的中断源服务,完成一定的I/O操作 恢复现场 完成中断服务后,将保存在堆栈中的现场数据恢复 开中断和中断返回 IRET (中断返回指令)
push AX push BX ……
pop BX pop AX ……
必要性及应用 中断功能便于实现 1.分时操作 2.实时处理 3.故障处理 4.主机与外设之间的速度匹配
CPU和外设同时工作;CPU可以通过分时操作启动多个外设同时工作,统一管理。大大提高了CPU的利用率,也提高了输入、输出的速度。
当计算机用于实时控制时,中断是一个十分重要的功能。现场的各个参数、信息,需要的话可在任何时候发出中断申请,要求CPU处理;CPU就可以马上响应(若中断是开放的话)加以处理。这样的及时处理在查询的工作方式是做不到的。

微机原理与应用第八章

微机原理与应用第八章

无条件传送的输出实例:
300 x 8 数 据 总 线
+5V
74LS373
LE OE
CS WR
MOV DX, 160H MOV AL, [BX] OUT DX, AL
可认为: LED发光二极管 是“始终就绪” 的外设。
无条件传送的输入输出接口:
A0~A15
IOR IOW
译码 8000 H +5V G LS244 三态 缓冲器 CLK LS273 8D 锁存器 LS06 反相 驱动器
⑴ CPU对DMA控制器进行初始化设置 ⑵ 外设、DMAC和CPU三者通过应答信号建立 联系:CPU将总线交给DMAC控制 传送流程 ⑶ DMA传送

DMA读存储器:存储器 → 外设 DMA写存储器:存储器 ← 外设
8.1 8.2 8.3 8.4
微型计算机的输入/输出接口 并行通信与并行接口 可编程并行通信接口芯片8255A 串行通信与串行接口
DB
数据 信息

AB

CB
接口 电路
外 设
数据通常有四种类型:
状态 信息
控制 信息
模拟量不能直接进 入计算机,必须经 过A/D转换器
数字量:二进制形式的数据,或 是已经编过码的二进制 形式的数据。 (1位、8位、16位或32位) 模拟量:用模拟电压或电流幅值大 小表示的物理量。 开关量:有两个状态,即“开”或“关” 一位二进制数就可表示的量 脉冲量:以脉冲形式表示的一种信号
LED7
K0 K1

LED0
K7
+5V …
D0~D7
8086
next:
mov dx,8000h in al,dx not al out dx,al call delay jmp next

微机原理第8章-2

微机原理第8章-2

中断服务程序: … IN AL ,DX ; 送输出允许OE信号,送数字 量到AL中 … IRET
2
数/模(D/A)转换
主程序:

MOV CX,8 ;一次循环采样,共8个通道 MOV DX,380H ;选择A/D通道0 MOV AL,0 ; 为第一次监测置初值 AGAIN:OUT DX,AL ;送START启动信号,锁定模拟输入地址 HLT ; 暂停,等待中断即EOC变高 CMP AL, 0F0H ;模拟值与0F0H比较 JA OVER ; 超限,转移到OVER INC DX ; 选择A/D通道1 LOOP AGAIN ; 中断结束后开始采样通道1 … OVER: …
启动转 换脉冲 时钟 脉冲
转换结 束信号
输出允 许信号
⑷控制逻辑与时序— 控制芯片的工作并提供转换所需的时序。
2、ADC0809引脚功能
⑴IN0~IN7— 8路模拟电压输入; ⑵ ALE — 地址锁存信号; ⑶ ADDA/B/C— 8路地址线; ⑷ D0~D7— 8位数字信号输出; ⑸CLK— 时钟信号(10K~1.2M); ⑹ VREF—基准电压,VREF(+) 接VCC,VREF (-)接地;

A/D转换器ADC完成模拟量→数字量的转换, D/A转换器DAC完成数字量→模拟量的转换。
模拟输入输出系统

1) 传感器

传感器是用于将工业生产现场的某些非电物理量转 换为电量(电流、电压)的器件。例如,热电偶能够 将温度这个物理量转换成几毫伏或几十毫伏的电压 信号,所以可用它作为温度传感器;而压力传感器 可以把物理量压力的变化转换为电信号,等等。 一般来讲,传感器输出的电信号都比较微弱,有些 传感器的输出甚至是电阻值、电容值等非电量。为 了易于与信号处理环节衔接,就需要将这些微弱电 信号及电阻值等非电量转换成一种统一的电信号, 变送器就是实现这一功能的器件。它将传感器的输 出信号转换成0~10 mA或4~20 mA的统一电流信号 或者0~5 V的电压信号

微机原理_中断实验报告(3篇)

微机原理_中断实验报告(3篇)

第1篇一、实验目的1. 理解中断系统的基本概念和工作原理。

2. 掌握中断源、中断向量、中断服务程序等基本概念。

3. 学习使用Keil软件进行中断程序的编写和调试。

4. 熟悉中断在微机系统中的应用。

二、实验原理中断系统是微机系统中重要的组成部分,它允许CPU在执行程序的过程中,响应外部事件或内部事件,从而实现多任务处理。

中断系统主要包括以下几个部分:1. 中断源:产生中断请求的设备或事件,如外部设备、定时器、软件中断等。

2. 中断向量:中断服务程序的入口地址,用于CPU在响应中断时找到相应的服务程序。

3. 中断服务程序:处理中断请求的程序,完成中断处理任务。

4. 中断优先级:不同中断源的优先级不同,用于确定中断响应的顺序。

三、实验设备与软件1. 实验设备:单片机实验板、计算机、Keil软件、Proteus仿真软件。

2. 实验软件:Keil uVision4、Proteus 8.0。

四、实验内容1. 外部中断实验(1)使用外部中断0(INT0)实现按键控制LED灯的亮灭。

(2)使用外部中断1(INT1)实现按键控制LED灯的闪烁。

2. 定时器中断实验(1)使用定时器0产生1秒的定时中断,实现LED灯的闪烁。

(2)使用定时器1产生1秒的定时中断,实现按键输入的计数。

3. 软件中断实验(1)使用软件中断实现按键输入的字符显示。

(2)使用软件中断实现按键输入的字符加密显示。

五、实验步骤1. 在Keil软件中创建一个新项目,选择合适的单片机型号。

2. 根据实验要求,编写中断服务程序,设置中断向量。

3. 在Proteus软件中搭建实验电路,包括单片机、按键、LED灯等。

4. 将Keil软件编译后的程序下载到单片机中。

5. 在Proteus软件中运行仿真,观察实验结果。

六、实验结果与分析1. 外部中断实验(1)按键按下时,LED灯亮;按键松开时,LED灯灭。

(2)按键按下时,LED灯闪烁;按键松开时,LED灯停止闪烁。

微机原理 第8章 中断控制器8259A 习题及参考

微机原理 第8章 中断控制器8259A 习题及参考

第八章中断控制器8259A1. 8259A的初始化命令字和操作命令字在设置上有什么不同?答:初始化命令字:是在计算机系统启动时,由初始化程序设置的,且一旦设定,一般在系统工作过程中就不再改变。

操作命令字:是由应用程序设定的,用来对中断处理过程作动态控制。

在系统运行过程中,可被多次设置。

2. 8259A中的中断屏蔽寄存器(IMR)与8086的中断允许标志(IF)有何差别?在中断响应过程中,它们是怎样配合工作的?答:差别有三:差别1——IMR中的某位为1时,说明对应此位的中断请求当前是受到屏蔽的;而IF位为0时,说明可屏蔽中断请求是受到屏蔽的。

差别2——IMR可以屏蔽部分中断请求;而IF为0时,屏蔽的是所有可屏蔽中断请求。

差别3——IMR是8259A中的一个8位寄存器;而IF是CPU中16位标志寄存器中的1位控制标志。

配合:只有当IMR中的某位为0且IF=1时,CPU才有可能响应对应此位的中断请求。

具体过程是:由中断请求寄存器(IRR)接收外部的中断请求并锁存中断请求,IMR中的对应位决定是否让这些请求通过。

如果IMR的对应位为1,则说明此中断当前受到屏蔽,即对它进行了封锁,而不让其进入优先级裁决器(PR);如果IMR的对应位为0,则PR把新进入的中断请求与当前服务寄存器(ISR)中指示的当前正在处理的中断作比较,若判断出新进入的中断请求具有足够高的优先级,则PR通过相应的逻辑电路使8259A的INT端为1,从而向CPU发出一个中断请求;如果此时CPU的IF=1,则CPU执行完当前指令后,就会响应该中断请求;否则,若IF=0,则CPU不予响应。

3. 8259A的全嵌套工作方式与特殊全嵌套工作方式有何不同?答:工作在全嵌套方式下,当处理某一级中断时,只有当优先级更高的中断请求到来,才会实施中断嵌套。

当同级中断请求到来时,不会给予响应;而工作在特殊全嵌套方式下,当处理某一级中断时,若有同级的中断请求到来,也会给予响应,从而实现对同级中断请求的特殊嵌套。

微机原理中断的应用实例

微机原理中断的应用实例

微机原理中断的应用实例引言中断是微机原理中的重要概念之一,在实际的应用中起着至关重要的作用。

本文将介绍几个微机原理中断的应用实例,以展示中断的各种功能和用途。

通过这些实例,读者可以更好地理解和应用微机中断的知识。

实例一:键盘中断键盘中断是微机系统中最常见的中断之一。

它的应用范围非常广泛,可以用于用户输入的响应、快捷键的实现等方面。

以下是键盘中断的应用实例:•按下特定的键盘按键,触发相应的中断程序,从而实现对按键的响应。

•通过键盘中断监视特定的按键组合,实现快捷功能,如打开计算器、截屏等。

实例二:定时器中断定时器中断是微机原理中另一个常见的中断类型。

它常用于需要周期性执行某些任务的场景,如操作系统的任务调度、多媒体播放等。

以下是定时器中断的应用实例:•在操作系统中,定时器中断可以用于实现任务调度。

当定时器中断触发时,操作系统可以根据事先设定的优先级来执行相应的任务。

•在多媒体应用中,定时器中断可以用于周期性地更新屏幕上的图像,实现流畅的动画效果。

实例三:外部设备中断外部设备中断是指由于外部设备的操作引起的中断。

它常用于与硬件设备的交互,如串口通信、并口通信等。

以下是外部设备中断的应用实例:•与串口通信相关的中断可以用于接收和发送串口数据,实现与外部设备的数据交互。

•并口通信相关的中断可以用于接收和发送并口数据,实现高速数据传输。

实例四:异常中断异常中断是比较特殊的中断类型,它通常用于处理出现的错误或异常情况。

以下是异常中断的应用实例:•硬件故障引发的异常中断可以用于处理硬件错误,如内存故障、通信中断等。

•软件错误引发的异常中断可以用于捕获和处理非法指令、溢出等问题。

结论微机原理中断的应用实例丰富多样,涵盖了各个领域。

在实际的开发中,合理地利用中断可以提高系统的效率和可靠性。

通过学习和理解这些应用实例,读者可以更好地应用中断的知识,提升自己的微机原理水平。

内工大微机原理 第八章 数模和模数转换器1

内工大微机原理 第八章 数模和模数转换器1

A/D转换器 8-3 A/D转换器
一、A/D转换器的功能 转换器的功能 将模拟量(电压或电流) 将模拟量(电压或电流)转换为与该数值成正 比的数字量输出 。 二、A/D转换器的类型 A/D转换器的类型 计数型 逐次逼近型 双积分型
1、计数型A/D转换器的转换原理 计数型A/D转换器的转换原理 A/D
0809转换时间大约为100µs,可在启动0809后,延时等 待100µs,此时可确定A/D已转换结束,直接采集数据。
如:设0809端口地址为98H,将通道7(IN7)的模拟 0809端口地址为98H,将通道7 IN7) 端口地址为98H 量转换为数字量送存AL。 量转换为数字量送存AL。 AL MOV OUT CALL IN AL, AL,0000 0111B 98H, 98H,AL D150µ D150µs AL, AL,98H ;选择IN7 选择IN7 ;启动A/D转换器 启动A/D转换器 A/D ;延时150 µs 延时150 ;采集数据
2、逐次逼近型A/D转换器的转换原理 逐次逼近型A/D转换器的转换原理 A/D
输出数字量1000 0000
逐次逼近型A/D转换器的 逐次逼近型A/D转换器的 A/D 转换原理与计数型基本相 同,但转换速度快。 但转换速度快。
N
模拟输入>D/A转换值?
Y
输出数字量0100 0000 输出数字量1100 0000
输入数字量
8-2 DAC0832
一、DAC0832的结构及主要管脚
说明: 1、当ILE、CS、WR1有效时,输入寄存器的输出随输入而变。 输入寄存器的输出随输入而变。 输入寄存器的输出随输入而变 DAC寄存器的输出随输入而变。 2、当XFER、WR2有效时,DAC寄存器的输出随输入而变。 DAC寄存器的输出随输入而变 任一控制信号无效时,数据则被锁存 锁存。 锁存 3、0832D/A转换器为电流输出型(数字量 需要外接运算放大器将电流转换为电压。 4、0832采用双缓冲器(锁存器)结构,提供三种工作方式。 三种工作方式。 三种工作方式 ①无缓方式 ②单缓方式 ③双缓方式 电流),

微机原理及单片机应用技术第8章 80C51的中断与定时计数器

微机原理及单片机应用技术第8章 80C51的中断与定时计数器

定时/计数器的结构
T1引脚
TH1
TL1
TH0
T0引脚
TL0
机器周 期脉冲
TH1、TL1
内部总线
TH0、TL0
TF1 TR1 TF0 TR0 GATE C/T M1 M0 GATE C/T M1 M0
TCON
TMOD
TCON
外部中断相关位
T1方式
T0方式
TMOD
2020/10/27
21
计数脉冲源
定时/计数器的工作原理
76543210
TCON TF1 TR1 TF0 TR0
字节地址:88H
TFx:Tx溢出标志位。响应中断后TFx有硬件自动清0。 用软件设置TFx可产生同硬件置1或清0同样的效果。
TRx:Tx运行控制位。置1时开始工作;清0时停止工作。 TRx要由软件置1或清0(即启动与停止要由软件控制)。
2020/10/27
2020/10/27
24
定时/计数器的控制示意图
M1M0 工作方式


00 方式0 13位定时/计数器
01 方式1 16位定时/计数器
10 方式2 8位自动重装定时/计数器
11
方式3
T0分成两个独立的8位定时/计数器; T1此方式停止计数
注意:TMOD不能进行位寻址
2020/10/27
26
控制寄存器TCON
第八章 80C51的中断系统与定时计数器
8.1 80C51单片机的中断系统 8.2 80C51中断处理过程 8.3 80C51单片机的串行口
8.1 80C51单片机的中断系统
5.1.1 80C51中断系统的结构
中断的概念
与子程序调用相似 但有本质的区别

微机原理与接口技术:中断方式

微机原理与接口技术:中断方式
3
中断是一种异步机构。
4
中断传送方式的缺点:中断方式仍需要通过CPU执行程序来实现外设 与CPU之间的信息传送;CPU每次中断都需要花费时间保护断点和现 场,无法满足高速I/O设备的速度要求。
5
无条件传送方式、程序查询方式和中断方式在数据传送过程中,CPU 从内存读出数据,再输出到外部设备,因此,这三种方式被统称为程 序控制下的输入输出方式(Programmed input and output),简称 PIO方式。
6Hale Waihona Puke 知识点6.2.3中断传送方式
1
3. 中断传送方式
当输出设备处于空闲状态或者输入设备数据准备好时,接口向CPU发 出中断请求信号,CPU收到申请后及时响应接口的中断请求,暂停执 行主程序,转去执行中断服务程序,完成数据传输之后再返回到主程 序继续执行。
2
这种方式,CPU不再检测或查询外设的状态,设备具有了主动反映其 状态的能力,消除了程序查询方式的盲式测试,这种数据传送方式称 为中断方式。与程序查询方式相比,中断传送方式实时性好、节省 CPU时间、外设具有申请服务的主动权,并且在一定程度上实现设备 与CPU并行工作。

微机原理--第八章-中断系统

微机原理--第八章-中断系统

裁决器
0
IR6
0
IR7
选 CS 译 码
RD
WR
INTA INT
ICW1 芯片控制 A0
A0
1 × I3 I4 0 1 0 0 1 0 1 0 0 1
ICW2 中断类型号 1
ICW3 主从片连接关系
1 ICW4 方式控制
1
OCW1 中断屏蔽寄存器 IMR
00
0
SP/EN
CA0
OCW2 优先级设置、发EOI
上有中断申请,则将IRR相应位置1;
总线
D0 ~ D7 A0
A5 ~ A9
IOR IOW INTA INTR
数据线 D0 ~ D7
A0
ISR 0
当前 0
中断 服务
• 非屏蔽中断 – 由NMI引脚引起的中断,称非屏蔽中断。 – 当NMI引脚上产生上升沿信号,CPU必响应此中断请 求,即NMI引脚上的中断请求不受IF标志的控制, – IF不能屏蔽NMI引脚上的中断请求。
8086/8088CPU的中断分类图
中断源
外部中断 内部中断
非屏蔽中断 可屏蔽中断 内部硬件中断
SP/EN CA0 CA1 CA2
GND
+ 5V
电子钟时间基准
键盘 保留 串 口2 串 口1 硬盘 软盘 打印机
用于多片 8259A
级连情况
7.3.4 8259A的控制字
8259A中断控制器
处理部分
0
ISR 0
当前 0
中断 0
服务 0
寄存器
0 0
0
IRR
中断申请
0 0
寄存器 0
0
PR
0
优先级

微机原理与接口技术:中断处理的基本过程

微机原理与接口技术:中断处理的基本过程
15
5. 中断返回
返回到原程序的断点处,恢复硬件现场,继续执行原程序。中断返回 操作是中断响应操作的逆过程。
16
12ห้องสมุดไป่ตู้
中断控制器判优 中断控制器,如Intel8259A,可以以多种方式设置中断源的中断优先级。 中断控制器中有一个中断优先级判别器,它自动判别出目前提出中断请求 的优先级最高的中断源,并将它的中断向量码送到数据总线,CPU接收中 断向量码并据此找到它的中断服务程序。
13
3. 中断响应
经过中断判优,中断处理就进入中断响应阶段。中断响应时,CPU向中断 源发出中断响应信号,同时: ① 保护硬件现场; ② 关中断; ③ 保护断点; ④ 获得中断服务程序的入口地址。
14
4. 中断服务
中断服务程序的一般结构为: (1)保护现场。在中断服务程序的起始部分安排若干条入栈指令,将各 寄存器的内容压入堆栈保存。 (2)开中断。在中断服务程序执行期间允许级别更高的中断请求中断现 行的中断服务程序,实现中断嵌套。 (3)中断服务。完成中断源的具体要求。 (4)恢复现场。中断服务程序结束前,必须恢复主程序的中断现场。通 常是将保存在堆栈中的现场信息弹出到原来的寄存器中。 (5)中断返回。返回到原程序的断点处,继续执行原程序。
菊花链判优电路 CPU收到中断请求,如果允许中断,CPU发出中断响应信号。中断响应信 号首先到达菊花链的前端,如果中断源1提出了中断请求,它就会截获中 断响应信号,封锁它,使它不能向下一个中断源传送。不论下面的中断源 有没有提出中断请求,都不可能接收到中断响应信号,因此它们的中断请 求也不能被响应。
. A2
. A3
. . A4
。 A5
A6
&
I5

微机原理第八章:中断技术讲解

微机原理第八章:中断技术讲解
二、中断(zhōngduàn)源识别及中断(zhōngduàn) 判优
1.中断源识别
★ 软件查询法:
★ 中断矢量法:中断源提供中断类型号,CPU根据类型确定中断源 2.中断判优
★ 对同时产生的中断,首先处理优先级别较高的中断;
若优先级别相同,则按先来先服务的原则。
★ 对非同时产生的中断:
低优先级的中断程序允许被高优先级的中断源所中断
1.中断服务子程序的特点: 为“远过程”,用 IRET 指令返回
2.中断服务程序完成的工作
1)保护现场(通用寄存器的内容)
2)开中断(STI)
3)中断处理
4)关中断(CLI)
5)恢复现场 6)IRET
中断服务程序结构
保护有关寄存器内容 开中断
执行中断服务程序 关中断
恢复有关寄存器内容 执行IRET
精品资料
④ 执行 IRET 指令
4.退出中断(zhōngduàn) ① 关中断(zhōngduàn)
退

② 恢复现场中
③ 恢复断点 ④ 开中断(zhōngduàn) 断
精品资料
关中断 保存断点,保存现场
判别中断源 转入中断服务程序 保护寄存器、开中断 执行中断服务程序
IRET
关中断 恢复现场,恢复断点
开中断
STOSW
;串存储(字)
;AX→ES∶[DI]、 [DI+1]
MOV AX,SEG_INTR
;中断服务程序段基址送AX
STOSW
;串存储(字)
STI
;开中断
精品资料
2.用 MOV将直接(zhíjiē)中断向量写入中断向量表中
;将中断向量直接(zhíjiē)写入中断向量表中的程序段为
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

2. 可以实现外设工作请求的实时处理。
3.可以完成对一些故障的自行处理。如电源跳变 以及运算溢出等。
二、中断源及其种类
中断源——引起中断的原因,或能发出中 断请求的来源。 种类: 1.一般的输入输出设备,如键盘、打印机 2.数据通道中断源,如磁盘 3.实时时钟,如定时时间到 4.故障源,如电源掉电时需要保护现场及 数据 5.人为设置,如调试程序用的单步和断点
8.3 中断优先权
当出现多个中断源同时提出中断请求时, CPU既要识别有哪些中断源提出请求,还要辨 别和比较它们的优先权,先响应优先权最高的 中断请求。如果CPU正在处理中断,也要能够 响应优先权更高级的中断请求,而屏蔽掉同级 或低级的中断请求。 中断优先权的确定有两种方法:软件的方 法和硬件优先权排队电路。
2. 非屏蔽中断 出现在NMI线上的中断请求,不受标志位I的 影响,在当前指令执行完以后,CPU就响应。 在NMI线上的请求信号是边沿触发的,它的出 现是异步的,由内部把它锁存。8086要求NMI上 的请求脉冲的有效宽度(高电平的持续时间)要大 于两个时钟周期。 通常非屏蔽中断用于电源故障。非屏蔽中断 的优先权高于屏蔽中断。 CPU采样到有非屏蔽中断请求时,自动给出 中断向量号2,而不经过上述的可屏蔽中断那样的 中断响应周期。
8.4.1 外部中断
8086有两条外部中断请求线: 非屏蔽中断NMI(Non Maskable Interrupt)和可屏蔽中断INTR。 1. 可屏蔽中断 出现在INTR线上的请求信号是电平触发的,它的出现是 异步的,在CPU内部是由CLK的上升沿来同步的。在INTR线 上的中断请求信号(即有效的Байду номын сангаас电平)必须保持到当前指令的结 束。
8.4 8086微处理器的中断方式
8086有两类中断:硬件中断和软件中断

硬中断是由来自CPU外部的事件产生,即由外部设备提出中 断请求而产生的。硬中断的产生具有随机性,何时产生中断, CPU预先并不知道。 80X86系列的CPU只有两个引脚(INTR和NMI)可以接收外部 的中断请求脉冲。相应地,硬中断可以分为两种类型:不可 屏蔽中断(来自CPU的NMI引脚)和可屏蔽中断(来自CPU的 INTR引脚)。
第八章


8.1 引言
中断的定义
所谓中断就是指CPU在正常运行程序时,由于内部/ 外部事件(或程序中的预先安排的事件)引起CPU 中止当前正在运行的程序,转而执行为这一事件服 务的程序,执行完毕,再返回被暂时中止的程序断 点处继续执行,这一过程就称为中断。
一、中断的优点 1.可以实现CPU与外设同步工作,以及实现多个 外设同时工作。
三、中断系统的功能
1. 实现中断及返回
当某一中断源发出中断请求时,CPU能决定是否响应 这个中断请求。若允许响应这个中断请求,CPU必须在现行 的指令执行完后,保护断点和现场。然后转到需要处理的中 断源的服务程序的入口,同时清除中断请求触发器。当中断 处理完后,再恢复被保留下来的各个寄存器和标志位的状态 (称为恢复现场),恢复IP和CS值(称为恢复断点),使CPU返回 断点,继续执行主程序。



软中断是指CPU执行在用户程序中安排的有定义的INT n指 令而引发的中断。之所以要强调是有定义的,是因为软件中 断定义的中断类型码范围内有的中断号系统没有定义与之配 套的中断服务程序。软中断不是由硬件产生,而是由用户在 程序中安排中断指令INT n时产生的。 显然,软中断的中断类型号是在中断指令中直接给出的。所 以,在软中断处理过程中CPU不会象硬件中断那样发中断响 应信号,也不要求中断控制器提供中断类型号。另一点需要 注意的是,产生软中断的时机是由用户程序特意安排而不是 随机的,因此,是可以预料的。这个特点与用户子程序调用 类似,而与硬件中断是不相同的。
一、软件确定中断优先权
软件采用查询技术。当CPU响应中断后,就用软件查 询以确定是哪些外设申请中断,并判断它们的优先权。 把各个外设的中断请求信号相“或” 后,作为INTR信号,故任一个外设 有中断请求,都可以向CPU送出 INTR信号。当CPU响应中断后,把 中断寄存器的状态,作为一个外设 读入CPU,逐位检测它们的状态, 若有中断请求就转到相应的服务程 序的入口
8.4.3 中断向量表
对应于每种中断源存在一个相应的中断服务程序,每一 中断服务程序都有一个确定的入口地址即中断向量, 把系统中所有中断源的中断向量集中起来放到存储器 的某一片连续区域内,这个存放中断向量的存储区就 叫中断向量表或中断服务程序入口地址表。 CPU把所有的256个中断向量集中起来,按中断类型号 从小到大的顺序放到主存储器的RAM中从最低地址 (物理地址为0)开始,长度为1024个字节(4个字节 ×256个向量=1024个字节=1KB),物理地址范围介于 00000H~003FFH的中断向量表中。每个中断向量占用 4个字节。在这4个字节中,包含着这个中断向量(或这 种中断类型)的服务程序的入口地址——前两个字节为 服务程序的IP,后两个字节为服务程序的CS。
1. 关中断 8086在CPU响应中断后,发出中断响应信号INTA的同时,内 部自动地实现关中断。 2. 保留断点 CPU响应中断,封锁IP+1,并且把IP和CS推入堆栈保留,以 备中断处理完毕后,能返回主程序。 3. 保护现场 为了使中断处理程序不影响主程序的运行,故要把断点处的有 关的各个寄存器的内容和标志位的状态,推入堆栈保护起来。 4. 给出中断入口,转入相应的中断服务程序 8086是由中断源提供的中断矢量形成中断入口地址(即中断服务 程序的起始地址)
8.2
最简单的中断情况
一、CPU响应中断的条件
1. 设置中断请求触发器——每个中断源有一个中断请 求触发器,中断源通过该触发器向CPU发请求信号, 直到CPU响应这个中断请求,才清除该请求信号。
2.设置中断屏蔽触发器——对于多个中断源的情
况,需要对中断请求进行控制,通过设置中断 屏蔽触发器来实现。
8.4.2 内部中断
8086可以有几种产生内部中断的情况: (1) DIV或IDIV指令 在执行除法指令时,若发现除数为0或商超过了 寄存器所能表达的范围,则立即产生一个类型为0 的内部中断。 (2) INT指令 如前所述,在8086的指令系统中有一条中断指 令——即INT n指令。这种指令的执行引起中断, 而且中断的类型可由指令中的n加以指定。
(2) 移位法 XOR IN RCL JC RCL JC ┇
AL,AL AL,[20H] AL,1 PWF AL,1 DISS
查询方法的优点是: (1)询问的次序即是优先权的次序。显然,最先询 问的,优先权的级别最高。 (2)省硬件。不需要有判断与确定优先权的硬件排 队电路。 ’ 但随之而来的缺点是: 由询问转至相应的服务程序入口的时间长,尤其 是在中断源较多的情况下。
(3) INTO指令 若上一条指令执行的结果,使溢出标志位O=1, 则INTO指令引起类型为4的内部中断。否则,此 指令不起作用,程序执行下一条指令。 (4) 单步执行 若标志位T=1,则CPU在每一条指令执行完以 后,引起一个类型为1的中断,这可以做到单步执 行,是一种强有力的调试手段。 8086规定这些中断的优先权次序为: 内部中 断、NMI、INTR,优先权最低的是单步执行。
在这条线上出现的中断请求,CPU是否响应 要取决于标志位I的状态,若I=1,则CPU就响应; 若I=0,则CPU就不响应。 注意: 在系统复位以后,标志位I=0;另外任一种 中断(内部中断、NMI、INTR)被响应后,I=0。所 以必须在一定的时候用STI指令来开放中断。 CPU是在当前指令周期的最后一个T状态采样 中断请求线,若发现有可屏蔽中断请求,且中断 是开放的(I标志为“1”),则CPU转入中断响应周 期。
1. 将类型码乘以4,作为中断向量表的指针。 2. CPU的标志寄存器入栈保护 3. 复制跟踪标志TF状态,接着清零TF和IF标志。 4. 把主程序断点处的IP和CS推入堆栈保护 5. 从中断向量表中取服务程序入口地址,分别送 给CS和IP。 6.CPU按新地址执行中断服务程序。
3. 中断必须是开放的—— 即CPU内部的中断允许 触发器必须置“1”。该触 发器对应的就是中断允许 标志位IF,所以可以用 STI和CLI指令来改变。 4. 现行指令执行结束—— CPU必须在现行指令执行 到最后一个机器周期的最 后一个T状态才去采用 INTR线。响应流程如右 图。
二、CPU对中断的响应 大体上可以分成六步:
二、 硬件优先权排队电路
1.中断优先权编码电路:由硬件编码器和比较器构成。
工作原理: ①若CPU不在处理中断,则“优 先权失效”信号为高电平,则出现任 一中断源请求,都能通过与门2发出 INTR信号。若同时有多个源请求中 断,则优先权编码组只对最高优先权 的编码,保证中断响应进入对应的中 断处理程序。 ②若CPU正在处理中断,则“优 先权失效”信号为低电平,与门2被 封锁。正在处理的外设优先权编码通 过数据总线送到优先权寄存器,对应 的编码B2B1B0送至比较器。新申请 中断的外设编码A2A1A0也送至比较 器。若A≤B,则 “A>B”端输出低 电平,与门1被封锁。只有当优先权 更高的中断源有请求时,A>B端才 输出高电平,从而打开与门1,向 CPU送出INTR信号。
2.实现优先权的排队
在计算机系统中通常有多个中断源。会出现两个或更 多个中断源同时提出中断请求的情况,这样就必须要设计 者事先根据轻重缓急,给每个中断源确定 一个中断级别— —优先权。 3. 高级中断源能中断低级中断源的中断处理 即实现中断嵌套;当CPU正在执行优先级较低的服务时, 如果有较高优先级的中断请求出现,则应暂时中断当前的处 理过程,转而去处理较高优先级的中断请求,完毕后再回来 处理较低优先级的中断。 。
2. 链式优先权排队电路
工作原理: 多个中断输入相或,产生INTR 信号送CPU。CPU执行完现行指 令,则响应中断,发出中断响应信 号。接下来则由链式排队电路决定 CPU进入哪个中断服务程序。 若上一级中断源有请求,对应 的F/F触发器输出为“1”,则其中 断输出亦为高电平,控制CPU转 至相应的服务程序入口,同时屏蔽 了本级和所有的低级中断。 若上一级没有中断请求,则对 应的F/F触发器输出为“0”,其中 断输出亦为低电平,当本级有中断 请求时,可转去执行本级的处理程 序,同时又屏蔽了所有低级中断请 求。
相关文档
最新文档