微机原理第七章输入输出接口_第1页
微机原理第七章输入输出接口_第2页
微机原理第七章输入输出接口_第3页
微机原理第七章输入输出接口_第4页
微机原理第七章输入输出接口_第5页
已阅读5页,还剩32页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第七章输入/输出接口

7.讨既述

7.2CPU与外设数据传送的方式

7.3可编程计数器/定时器8253

7.4串行通讯和串行接口

7.5并行接口

7.6DMA控制器8237

7.7D/A和A/D转换技术

7.1概述

、接口电路的分类和功能

外设必须通过接口电路与CPU相连接

线

线

控制

接口电路设

态线

、接口电路的分类和功能

接口电路按通用性分为两类:通用接口和专用接口

通用接口:可供多种外部设备使用的标准接口,目的是使微机正常

工作

通用接口通常制造成集成电路芯片,称为接口芯片。

最初的IBM-PC使用了6块接口芯片:8284、8288、8255、8259

8237、8253

后来的微机将这些芯片集成为大规模集成电路芯片,称为芯片

组。

如82430TX芯片组,由两片芯片组成:

北桥:82439TX

南桥:82371AB

PemimProaeasor

•一、接口电路的分类和功能

、接口电路的分类和功能

专用接口:为某种用途或某类外设而专门设计的接口电路,目

在于扩充微机系统的功能。

专用接口通常制造成接口卡,插在主板总线插槽上使用。

通用接口和专用接口的界限并不严格。

按照可编程性,接口芯片分成硬步线逻辑接口芯片和可编程接口

-4-HL_C

心片o

可编程接口芯片的功能可以由指令来控制0

、接口电路的分类和功能

接口电路的功能:

1)缓冲锁存数据P.228

2)地址译码

3)传递命令

4)码制转换

5)电平转换

二、接口电路的基本结构P.196

接口电路通常包含一组能够与处理器交换信息的寄存器,称为I/O

端口寄存器,简称为I/O端口

1)数据端口——存放数据信息

2)状态端口——存放状态信息,即反映外设当前工作状态的信息

3)控制端口——存放控制信息

状态信息与控制信息可以广义地看作数据信息,因此可以通过

数据总线传送

三、I/O端口的编址方式

•I/O端口与存储单元统一编址

•I/O端口独立编址

PC系列机采用I/O端口独立编址方式

Port0(32位)

三、I/O端口的编址方式

端口地址是一种重要资源

^Microsoft系统信息*>口|x|

文件星)编辑⑥查看②工具d)帮助⑻

H|昌|”电1

系统信息I/O范围设备

臼硬件资源xOOOO-xOOOF直接内存访问控制器

冲突/共享x0020-x0021可编程的中断控制器

DMAx0040-x0043系统计时器

强制硬件x0060-x0060标淮101/102建或Microsoft自然键盘

x0061-x0061系统扬声器

标港健或自然犍盘

IRQsx0064-x0064101/102Microsoft

系统实时钟

内存xOOTO-xOOTlCMOS/

直接内存访问控制器

®殂件x0080-x0090

国软件环境x0094-x009F直接内存访问控制器

xOOAO-xOOAl可编程的中断控制器

xOOCO-xOODE直接内存访问控制器

xOOFO-xOOFO数值数据处理器

xOlTO-x0177Intel82371AB/EBPCIBusMasterIDEContr

xOlTO—x0177SecondaryIDEcontroller(dual£i£o)

xOlFO-xOlFTIntel82371AB/EBPCIBusMasterIDEContr

xOlFO-x01F7PrimaryIDEcontroller(dualfifo)

卜11►1

若需要帮助,请按F1|当前的案统凝

,三、I/O端口的编址方式

-----------------------------------------------------------------

,•端口的寻址P.83

.•把端口地址放在DX寄存器中,对该端口进行读写

«INAL,DX

OUTDX,AL

.——可寻址的端口号为0〜65535(FFFFH)

L<•端口地址小于或等于FFH(255),可以用立即数表示端口地址

I.INAL,42H

OUT43H,AL

7.2CPU与外设数据传送的方式

无条件传送

程序传送方式

程序查询传送(条件传送)

中断传送方式

DMA传送方式

、程序传送方式

CPU与外设间的数据交换在程序控制下进行

••(一)无条件传送

不查询外设状态,认为外设已经准备就绪,直接与外设传送数据

外设准备就绪:对于输入设备,已经把数据放入接口电路的数

据输入寄存器,CPU可以读取;对于输出设备,已经准备好接

收数据(接口电路的数据输出寄存器已空),CPU可以向它输

出数据

由于不查询外设状态,接口电路不需要状态寄存器

、程序传送方式

输入缓存

输出锁存

无条件程序传送的原理,P.197

、程序传送方式

(二)程序查询传送

在执行输入输出前,要先查询接口中状态寄存器的状态。

输入时,状态寄存器的状态指示要输入的数据是否已经准备就2

输出时,状态寄存器的状态指示输出设备是否空闲

P.199

、中断传送方式

使用查询方式,CPU必须检测接口电路的状态寄存器,如果设备

未准备好,CPU就要不断地查询,降低了CPU的运行效率

中断方式:当外设作好传送准备后,主动向CPU请求中断,CPU

响应中断后在中断处理程序中与外设交换数据。若外设未准备好,

CPU可以执行其他程序,提高了CPU的利用率

每条指令完成后,CPU均可响应中断,因此当设备准备好时,可

及时与CPU交换数据,提高了实时性

三、DMA传送方式

对于高速外设(如磁盘、高速A/D),中断方式不能满足数据

传输速度的要求。

DMA=DirectMemoryAccess-----直接存储器访问

DMA方式是一种由专门的硬件电路执行I/O的数据传送方式,

它可以让外设接口直接与内存进行高速的数据传送,而不必经

过CPU。这种专门的硬件电路称为DMA控制器,简称DMAC

7.3可编程计时器/计数器8253

-、计数/定时的工作原理

计数/定时的功能

•对外部事件发生次数进行计数

・计算机系统经常用到定时信号,如DRAM刷新定时

计数和计时本质上是相同的,它们都是对一个输入脉冲进行

计数,如果输入脉冲的频率一定,那么记录脉冲的个数与所

需的时间是一一对应的关系。

例如输入脉冲频率为2MHz,那么计数2x106<—>计时1秒

因此,使用同一个芯片,既能计数,又能计时计时器/计数器

、计数/定时的工作原理

组成:

控制寄存器——决定工作模式

状态寄存器——反应工作状态

初值寄存器——计数的初值

计数输出寄存器——CPU从中读

当前计数值

计数器——执行计数操作,

CPU不能访问

、计数/定时的工作原理

,工作原理:对CLK信号进行减1计数

*首先,CPU把控制字写入控制寄存器,计数初始值写入初值寄存器

.计数从初值开始,每当CLK信号出现一次,计数值减1

•当计数值减到0,从OUT端输出规定的信号

.CLK信号出现时,计数器是否减1,由门控信号GATE控制

、计数/定时的工作原理

CLK是计数输入信号,计数器对CLK端出现的脉冲个数进行计

•CLK端可以输入外部事件

•CLK端可以接入固定频率的时钟信号,从而实现计时

OUT信号在计数结束时发生变化

•可将OUT作为外部设备的控制信号

•可将OUT作为向CPU申请中断的信号

CPU可以从计数输出寄存器读出当前计数值。

读前,应向控制寄存器发送锁存命令

二、8253的编程结构

1片8253内部有三个计数器,结构完全相同

8253的引脚、内部结构、寻址方式

P.229

每个计数器内部都有一个8位控制寄存器,三个控制寄存器使

用相同的端口,在编程结构图中画为一个

8253没有状态寄存器

二、8253的编程结构

每个计数器的初值寄存器(CR)、输出锁存器(OL)都是16位

的,但它们对应相同的一个8位端口地址,所以16位的CR、OL

作为两个8位寄存器读写,由控制寄存器控制读写高8位/低8位

8253控制字的格式

P.230

三、8253的编程命令

•初始化1)写入控制字

••2)按控制字要求写入计数初值

计数器初值计算:N/LKTOUT

例:设三个计数器的CR/OL端口地址为70H、71H、72H,控制

寄存器端口地址73H。计数器0,工作模式2,CR/OL仅使用低8

位,初值为100,计数值使用二进制

MOVAL,14H

OUT73H,AL

MOVAL,100

OUT70H,AL

三、8253的编程命令

例:设三个计数器的CR/OL端口地址为70H、71H、72H,控制

寄存器端口地址73H。计数器1,工作模式1,CR/OL使用16位,

初值为1234,计数值使用BCD

MOVAL,73H

OUT73H,AL

MOVAX,1234H

OUT71H,AL

MOVAL,AH

OUT71H,AL

三、8253的编程命令

•读出命令

1)发出锁存命令,使当前计数值锁存在OL中

2)读OL,获得当前计数值

例:设三个计数器的CR/OL端口地址为70H、71H、72H,控制

寄存器端口地址73H。读出计数器0的当前计数值,放在BX中

MOVAL,OH

OUT73H,AL

INAL,70H

MOVBL,AL

INAL,70H

MOVBH,AL

四、8253的工作模式

工作模式决定以下内容:

1)门控信号的影响

高电平允许,当GATE=O,即使出现CLK,也不计数

----模式0,2,3,4

上升沿允许(上升沿触发)

——模式1,5

2)OUT信号的状态

写入控制字后,OUT的状态

计数过程中,OUT的状态

计数终了,OUT的状态

3)计数操作可否重复

不可重复——模式0,4

自动重复——模式2,3

条件重复——模式1,5

四、8253的工作模式

六种工作模式

P.230

•计数初值写入初值寄存器后,要经过一个CLK输入后才开始计数

(或,经过一个CLK后,计数初值才到达计数执行部件)

・计数器在CLK的下降沿使计数值减1

四、8253的工作模式

方式0:

计数初值写入CR后,OUT由0到1跳变出现在n+1个时钟脉冲之

延迟时间TD=(H+1)TCLK

方式1:

单脉冲宽度T=nTCLK

方式2:

对输入端n个时钟脉冲,在输出端仅出现一个时钟脉冲

——N分频计数器

四、8253的工作模式

方式3:

例:计数器工作模式3,计数器初值15,时钟脉冲频率为

2MHz,确定OUT端输出方波的特性。

解:TCLK=l/2MHz=500ns

计数器初值15为奇数,输出分频波高电平宽度

TCLK(N+1)/2=4JIS

输出分频波低电平宽度

TCLK(N-1)/2=3.5|1S

方式4、5:

触发后n+1个时钟脉冲之后输出端产生选通脉冲信号

四、8253的工作模式

例:计数器0工作模式4,初始化计数器,使装入计数器10四后

产生选通信号(设时钟频率2MHz,8253端口地址为50H〜53H)。

解:n+l=T/TCIK=10/0.5=20

n=19=13H

MOVAL,18H

OUT53H,AL

MOVAL,13H

OUT50H,AL

五、8253的应用

1.PC机中8253的应用

计数器0:向系统日历时钟提供定时中断

模式3,控制字36H,计数器初始值0

计数器1:动态RAM刷新

模式2,控制字54H,计数器初始值18(12H)

计数器2:控制扬声器发声

模式3,控制字B6H,计数器初始值1331(533H)

PC机中,8253的端口地址为40H〜43H

五、8253的应用

2.扬声器控制

设计一个程序,使扬声器发出600Hz频率的声音,按下任意键

声音停止

PC机的发声系统以计数器2为核心。CLK2的输入频率1.19MHz,

改变计数器初值可以由OUT2得到不同频率的方波输出

对于600Hz,计数初值LI9MHz/600Hz=1938

发声系统受8255芯片B口的两个输出端线PBO、PB1的控制

PBO为1,使GATE2为1,计数器2能正常计数

PB1为1,打开输出控制门

五、8253的应用

CODESEGMENT2.扬声器控制

ASSUMECS:CODE

START:

INAL,61H

ORAL,03H

OUT61H,AL

MOVAX,1983

OUT42H,AL

MOVAL,AH

OUT42,AL

MOVAH,01H

INT21H

INA1,61H

ANDAL,OFCH

OUT61H,AL

MOVAH,4CH

INT21H

CODEENDS

ENDSTART

五、8253的应用

3.以2MHz输入8253,实现每5秒定时中断(设8253端口地址

40H〜43H)

分析:8253最大初值65536,CLK=2MHz可实现最大时间间隔

65536/(2xl06)=32.769ms

所以需要两个计数器串联,一个计数器的输出作为另一个计数

器的输入

五、8253的应用

计数器1:模式2,OUT1每5ms输出一个脉冲

初值(2x106)/(1/0.005)=10000

计数器0:模式2,OUTO每5s输出一个脉冲

每5秒产生

初值(1/0.005)/(1/5)=1000一个脉冲

OUTO

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论