第九章I-O接口
IO接口
I/O接口是一电子电路(以IC芯片或接口板形式出现 ),其内有若干专用寄存器和相应的控制逻辑电路构成.它是CPU和I/O设备之间交换信息的媒介和桥梁.CPU与外部设备、存储器的连接和数据交换都需要通过接口设备来实现,前者被称为I/O接口,而后者则被称为存储器接口。
存储器通常在CPU的同步控制下工作,接口电路比较简单;而I/O设备品种繁多,其相应的接口电路也各不相同,因此,习惯上说到接口只是指I/O接口。
编辑本段基本功能· 进行端口地址译码设备选择· 向CPU提供I/O设备的状态信息和进行命令译码· 进行定时和相应时序控制。
· 对传送数据提供缓冲,以消除计算机与外设在“定时”或数据处理速度上的差异。
· 提供计算机与外设间有关信息格式的相容性变换。
提供有关电气的适配· 还可以中断方式实现CPU与外设之间信息的交换编辑本段接口组成包括硬件电路和软件编程两部分硬件电路包括基本逻辑电路,端口译码电路和供选电路等。
软件编程包括初始化程序段,传送方式处理程序段,主控程序段程序终止与退出程序段及辅助程序段等.编辑本段接口分类I/O接口的功能是负责实现CPU通过系统总线把I/O电路和外围设备联系在一起,按照电路和设备的复杂程度,I/O接口的硬件主要分为两大类:(1)I/O接口芯片这些芯片大都是集成电路,通过CPU输入不同的命令和参数,并控制相关的I/O电路和简单的外设作相应的操作,常见的接口芯片如定时/计数器、中断控制器、DMA控制器、并行接口等。
(2)I/O接口控制卡有若干个集成电路按一定的逻辑组成为一个部件,或者直接与CPU同在主板上,或是一个插件插在系统总线插槽上。
按照接口的连接对象来分,又可以将他们分为串行接口、并行接口、键盘接口和磁盘接口等。
编辑本段接口功能由于计算机的外围设备品种繁多,几乎都采用了机电传动设备,因此,CPU在与I/O设备进行数据交换时存在以下问题:速度不匹配:I/O设备的工作速度要比CPU慢许多,而且由于种类的不同,他们之间的速度差异也很大,例如硬盘的传输速度就要比打印机快出很多。
I-O接口概述
如图所示,接口是CPU与内存及CPU与外部设备之间通 过总线进行连接的逻辑结构(电路),是一个特定的管理/协调 和信息缓冲部件,前者称为存储器接口,后者称为I/O接口。 选用不同的外部设备(简称外设),配置相应的接口电路,可以 构成不同用途的应用系统。下面主要讨论I/O接口。
1.1接口
1.1 I/O设备与I/O接口
最后,若I/O设备直接由CPU控制,也会使外设的硬件结构 依赖于CPU,对外设本身的发展不利。I/O接口的引入,使得 CPU对I/O设备的操作转化为对I/O
接口技术是把由微处理器、存储器等组成的基本系统与外 部设备连接起来,从而实现计算机与外部设备通信的一门技术。 微处理器通过总线与接口电路连接,接口电路再与外部设备连 接,因此CPU总是通过接口与外部设备发生联系。微机的应用 是随着外部设备的不断更新和接口技术的发展而深入到各个领 域的。实际上,任何一个微机应用系统的研制和设计,主要就 是微机接口的研制和设计,需要设计的硬件是一些接口电路, 所要编写的软件是控制这些电路按要求工作的驱动程序。
为了将计算机应用于数据采集、参数检测和实时控制等领 域,则必须向计算机输入反映测控对象的状态和变化的信息, 经过中央处理器处理后,再向控制对象输出控制信息。这些输 入信息和输出信息的表现是千差万别的,可能是开关量或各种不 同性质的模拟量,如温度、湿度、压力、流量、长度、刚度和 浓度等,因此需要把各种传感器和执行机构与微处理器或微机 连接起来。所有这些设备称为外部设备或输入/输出设备(I/O设 备)。
《I-O接口和总线I》课件
I-O接口和总线是计算机系统中的重要组成部分,本课程将详细介绍它们的定 义、作用、分类以及应用前景等内容。
I-O接口和总线的定义
1 什么是I-O接口和总线?
I-O接口和总线是计算机系统中用于连接外部设备和中央处理器的通信通道。
2 作用
I-O接口和总线起到数据传输和协调的作用,实现计算机与外设之间的交互。
I-O控制器的作用
1 定义
I-O控制器是用于管理和控制外设的芯片或电路。
2 作用
监控外设的状态、接收和发送数据、协调外设与计算机之间的通信等。
USB总线和Firewire总线
1
USB总线
U niversal Serial Bus,广泛应用的外部设备接口,支持热插拔。
2
Firewire总线
IEEE 1394,用于高速数据传输的接口,适用于音视频设备。
3
Thunderbolt总线
高速数据传输接口,用于连接外部存储设备和显示器。
I-O通知处理器发生了重要事件,启 动相应的中断处理程序。
DMA
直接存储器访问,允许外设直接访问系统内存, 提高数据传输效率。
端口和寄存器
1
端口
与计算机系统连接的接口,用于数据
寄存器
2
的输入和输出。
用于存储控制和状态信息,对I-O操作
进行管理。
3
寄存器与端口的关系
寄存器是端口的一部分,用于控制和 管理端口的功能。
控制总线
用于控制信息的传输和处理。
PCI总线和ISA总线
PCI总线
Perip heral C o m p o nent Interco nnect,高性 能总线,被广泛应用于主板上的扩展插槽。
第15讲IO接口电路基本概念
端口B和C: 都包含一个8位数据输入缓 冲器和一个8位的数据输出锁存器/缓冲器, 输出数据能锁存,输入数据不锁存。
端口C:可分成两个4位端口,分别定义 为输入或输出端口,还可定义为控制、状 态端口,配合端口A和端口B工作。
NEXTIN:IN TEST JZ
IN
AL,STATUS-PORT;从状态口输入状态信息
AL,01H
;测试标志位是否为1
NEXTIN
;未就绪,继续查询
AL,DATA-PORT ;从数据端口输入数据
查询输出
查询式输出的端口信息
NEXTOUT:
IN AL, STATUS_PORT TEST AL, 80H JNZ NEXTOUT MOV AL, BUF
DMA与程序控制数据传送路径的比较
外设
CPU
总
存储器
线
程序控制的数据输入/输出
DMA
DMA与程序控制数据传送路径比较
I/O概述
微机系统的信息交换有并行通信 和串行通信两种方式。
并行通信是以微机的字长为传输单位; 适合于外部设备与微机之间进行近距离、 大量和快速的信息交换。
实现并行通信的接口称之为并 行接口。
方式设置标志
1=有效
图 8255A工作方式控制字格式
(2) 端口C的置位/复位控制字
控制字的格式如图所示。
D7 D6 D5 D4 D3 D2 D1 D0
不使用 设置为000
位的置位/复位 1=置位,0=复位
位 选择 D3 D2 D1 通道C位
0 0 0 PC0 0 0 1 PC1 0 1 0 PC2 0 1 1 PC3 1 0 0 PC4 1 0 1 PC5 1 1 0 PC6 1 1 1 PC7
单片机原理及接口技术课后习题第9章 答案
第九章复习思考题1. 计算机系统中为什么要设置输入输出接口输入/输出接口电路是CPU与外设进行数据传输的桥梁。
外设输入给CPU的数据,首先由外设传递到输入接口电路,再由CPU从接口获取;而CPU输出到外设的数据,先由CPU 输出到接口电路,然后与接口相接的外设获得数据。
CPU与外设之间的信息交换,实际上是与I/O接口电路之间的信息交换。
2. 简述输入输出接口的作用。
I/O接口电路的作用主要体现在以下几个方面:(1)实现单片机与外设之间的速度匹配;(2)实现输出数据锁存;(3)实现输入数据三态缓冲;(4)实现数据格式转换。
3. 在计算机系统中,CPU与输入输出接口之间传输数据的控制方式有哪几种各有什么特点在计算机系统中,CPU与I/O接口之间传输数据有3种控制方式:无条件方式,条件方式,中断方式,直接存储器存取方式。
在无条件方式下,只要CPU执行输入/输出指令,I/O接口就已经为数据交换做好了准备,也就是在输入数据时,外设传输的数据已经传送至输入接口,数据已经在输入接口端准备好;输出数据时,外设已经把上一次输出的数据取走,输出接口已经准备好接收新的数据。
条件控制方式也称为查询方式。
CPU进行数据传输时,先读接口的状态信息,根据状态信息判断接口是否准备好,如果没有准备就绪,CPU将继续查询接口状态,直到其准备好后才进行数据传输。
在中断控制方式下,当接口准备好数据传输时向CPU提出中断请求,如果满足中断响应条件,CPU则响应,这时CPU才暂时停止执行正在执行的程序,转去执行中断处理程序进行数据传输。
传输完数据后,返回原来的程序继续执行。
直接存储器存取方式即DMA方式,它由硬件完成数据交换,不需要CPU的介入,由DMA 控制器控制,使数据在存储器与外设之间直接传送。
4. 采用74LS273和74LS244为8051单片机扩展8路输入和8路输出接口,设外设8个按钮开关和8个LED,每个按钮控制1个LED,设计接口电路并编制检测控制程序。
I-O接口扩展电路的设计
单片机原理及应用
I/O接口扩展电路的设计
知识能力:熟悉I/O接口的基本特点,了解8255A 芯片结构及编程方法。
技能能力:掌握I/O接口扩展的硬件设计方法、软件程序设计能力和调 试排错能力。
社会能力:训练学生工程意识和良好的劳动纪律观念,培养学生认真做 事、用心做事的态度 。
2. 8255AA的引脚功能介绍
知识能力
1.2 MCS-51对可编程并行I/O芯片8255AA的扩展
表5-6 8255AA 的操作功能表
知识能力
1.2 MCS-51对可编程并行I/O芯片8255AA的扩展
3. 8255AA的工作方式
图5-21 选通输入时的联络应答信号
知识能力
1.2 MCS-51对可编程并行I/O芯片8255AA的扩展
技能能力
图5-27 8255A I/O 扩展
技能能力
4)程序范例: 功能:PB作为输入口检测按键的状态,并把从PB口读入的数据输出到PA口。
ORG 00H MAIN: ACALL DELAY
MOV DPTR,#7003H MOV A,#82H MOVX @DPTR,A LOOP: MOV DPTR,#7001H MOVX A,@DPTR MOV DPTR,#7000H MOVX @DPTR,A SJMP LOOP DELAY: MOV R1,#00H DLP: MOV R2,#50H DJNZ R2,$ DJNZ R1,DLP RET END
3. 并行I/O口的扩展方法
知识能力
图5-17 用74LS165扩展1位并行输入口
3. 并行I/O口的扩展方法
知识能力
图5-18 用74LS164扩展1位并行输入口
I-O接口的基本功能
1.2 I/O接口的组成
(3)
状态寄存器用于记录外设现行各种状态信息。它的内容 可以被处理器读出,从而使CPU了解外设及数据传送过程中 正在发生或最近已经发生的情况,作出正确的判断,使它能 安全可靠地与接口完成交换数据的各种操作。特别当CPU以 程序查询方式同外设交换数据时,状态寄存器更是必不可少
3种寄存器是接口电路中的核心部分。为了保证在 处理器和外设之间通过接口正确地传送数据,接口电路还必
(4)
数据总线和地址总线缓冲器用于实现接口芯片内部总线 和处理器外部总线的连接。如接口的数据总线可直接和系统 数据总线相连接、接口的端口选择根据I/O寻址方式的要求与 地址总线恰当地连接。
1.2 I/O接口的组成
对外联络控制逻辑用于产生与接收CPU和外设之间数据传送的同步 信号。这些联络握手信号包括微处理器一边的终端请求响应、总线请求和
当然,并非所有接口都具备上述全部组成部分。但一般来说,数据 缓冲器、端口地址译码器和输入/输出操作控制逻辑是接口电路中的核心 部分,任何接口都不可少。其他部分保证在处理器和外设之间通过接口正 确地传送数据,至于是否需要,则取决于接口功能的复杂程度和CPU与外 设的数据传送方式。
1.2 I/O接口的组成 2. 接口软件又称为设备驱动程序。从实现接口功能来看,
(1) 对可编程接口芯片,都需要通过其方式命令或初始化命 令设置工作方式O设备的处理,一般都涉及到输入/输出数据传送,针 对CPU与I/O设备不同的数据传送方式,要有不同的处理程序 段。
(5)端口地址译码器
端口地址译码器用于正确选择接口电路内部各端口寄存器的地址,保 证一个端口寄存器唯一地对应一个端口地址码,以便处理器正确无误地与 指定外设交换信息,完成规定的I/O
第9章_ BIOS与DOS中断(书)
高级
DOS
低级
DOS
ROM
BIOS
外设
但BIOS更靠近硬件,DOS能处理大多数的I/o
表9.1 BIOS中断类型 表9.2
9.1键盘I/O
键盘提供了三种基本类型的健:
字符键:如字母A-8,数字0-9,%$#等 2扩展功能键:如Home、 End、Return、Del、Ins、Pgup 、Pgdn 3控制键和其它键组合使用,如Alt、Crtl、Shift 字符键给计算机传送一个ASLII码字符 扩展功能键产生一个动作,DEL删除一个字符。 控制键能改变其它键所产生的字符码Ctrl-c 1、 字符码与扫描码 按下“或”放开一个键时,产生一个类型“9”的中并转 BIO的键盘中断处理程序。该处理程序从8255可编程序处 围接口芯的输入端口60H读取一个字节,这个字节的低7位 是键的扫描码。 最高位为0或为1,分别表示键是“按下”状还是“放开” 状态。
1、 BIOS键盘中断 类型16(键盘)中断提供了键盘的3种操作 AH=0从健盘读一字符AH、AL扫描码字符石 =1读健盘缓冲区的字符 =2取状态字节(AL) 无 字节高4位“键盘方式”(Ens、Capslock、Nomlock 、Scroll) 低4位表示Alt、Ctrl、Shift是否按动 例:取键盘状态,使AH=02H,INT16H 2、 DOS键盘功能调用,见表9.5 (1) 单字符输入 DOS 21H中断功能1.7和8都能从键盘读一字符送入 AL寄存器。 AH=1:将字符显示出来,并检验是否按下了CtrlBreak
例1:置光标开始行为5,结束行为7 并把它设置在第5行第6列 mov DH,4;5行(0,1,2,3,4,) 第5行 mov DL,5;6列,(0,1,2,3,4,5) mov BH,o ; 页号BH为0 mov AH,2 ; 置光标位置 INT IOH MOV CH,5 开始行 MOV CL,7 结束行 MOV AH,1 卷标行 INT 10H (1) 读光标位置(AH=3H,ZHT10H) AH=3,功能3是读光标位置,页号必须在BH中指定此功 能把光标位置的行号蜀犬吠日道给DH,列号=DL
串行I-O接口
32
波特率是串行口每秒钟发送或接收的数码位数,与振荡器的频率或
定时器的溢出率成正比。当定时器/计数器处于工作方式0、工作方式1
和工作方式3时 溢出率= 振荡频率/(2n-n位定时器初值+重置定时器的中断处理程序机
RI:接收中断标志。由硬件在方式0串行接收第8位结束或在其它 方式中接收停止位的中间时置1(除了与SM2有关),由软件清0。
以上标志设有位地址,可进行位操作,复位时全部清0。 2. 波特率选择寄存器PCON
D7 D6 D5 PCON SMOD
D4 D3 D2 D1 D0
字节地址87H
PCON用来确定串行数据传送时的波特率,没有位地址。有关SMOD 位的使用,将在下面结合串行通信接口的工作方式一起介绍。
2. 工作方式1 当SM0 SM1=01时,串行接口选择工作方式1,为可变波特率的
8位异步通信方式。发送数据由TXD端输出,每一帧信息为10位,一 位起始标志位0,8位数据位和一位停止位1。发送时,数据送入发送 缓冲器SBUF,然后启动发送。数据发送完后,将中断标志位TI置1。
接收时(REN=1)以所选波特率的16倍速率采样RXD引脚,当 采样到从1到0的下跳沿时启动接收器,确认起始位后,接收一帧信息 。当RI=0,停止位为1或SM2=0时,停止位进入RB8,中断标志位 RI置1。若这两个条件都不满足,则信息丢失。在通常情况下,串行 口方式1工作时,SM2清0,波特率为:
MOV A, @R0
;取数
MOV C, P
;奇偶标志送C
MOV TB8, C
;置奇偶标志
MOV SBUF, A
I O接口
查询输出的编程
1,上一数据处理结束,ACK的负跳变 恢复 使D触发器复"0" ,上一数据处理结束, 的负跳变 恢复)使 触发器复 触发器复" " 的负跳变(恢复 输出装置,启动信号= 恢复 恢复)→ 输出装置,启动信号=0(恢复 →缓冲器输出 Busy=0; ; 2,查询状态信号,执行 指令 IN AL,状态口 ,查询状态信号, , Busy(bit7) →AL 3,若Busy =0,执行指令 OUT 数据口,AL, , 数据口, , , 输出数据AL → DB → 锁存器→ 输出装置; 锁存器→ 输出装置; 输出数据 D触发器置 ,启动输出装置 触发器置1,启动输出装置Busy=1,禁止输出 触发器置 , POLL: IN : TEST JNE MOV OUT AL,STATUS_PORT , AL,80H , POLL AL,STORE ;从数据区取数 , DATA_PORT,AL ,
查询输入接口电路(组成) 查询输入接口电路(组成)
IN AL, DATA_PORT ,
M/ IO RD
数据
输 入 装 置
锁 存 器
三态 缓冲 器
DB
D7
数据端口 +5V 状态端口
三态 DRQ Ready 缓冲 器
地址 译码
AB
选通
RD M/ IO
工作原理
IN AL, , STATUS_PORT
1,数据准备好,选通信号输出正跳变将 ,数据准备好, 数据→ 数据→锁存器
二,查询传送 CPU需不断查询外设的状态,一旦外设满足数据传送的条 需不断查询外设的状态, 查询外设的状态 就执行IN或 指令, 件,就执行 或OUT指令,读入或输出数据. 指令 读入或输出数据.
汇编语言 第九章 BIOS和DOS中断
串口通讯中的错误检测功能 在接口设计中,常常要考虑对错误的检测问题。当前多数可编程接口,一般能检 测下列两类错误。 一类是传输错误。因为接口和设备之间的连线常常受噪声干扰,从而引起传线错误, 所以一般传输信息时,接口采用奇/偶校验位对传输错误进行检测。传输时,如果用奇 校验,那么使信息中1的数目(包括校验位)为奇数。也就是说,所传输的数据中如果 1的个数为奇数则使校验位为0,所传输的数据中如果1的个数为偶数则使校验位 为1,这样,在传输一个数据时,1的总数目总是为奇数。同样的道理,如果用偶校验. 那么,信息中1的数目(包括校验位)为偶数。接口在传输过程中,对信息校验之后, 如果发现有错误,则对状态寄存器中的相应位进行设置。而状态杏存器的内容可以通过 程序进行读取和检测。
第九章第一章 基础知识 彩色图形适配器及其编程
另一类是复盖错误。我们知道,当计算机输入数据时,实际上是从接口的输入缓冲寄存
器中取数。如果计算机还没有取走数据,输入缓冲寄存器由于某种原因又被装上了新的 数据,那么,就全产生一个复盖错误。在输出时,也会有类似的情况。
返回参数中通讯口状态字节各位置1的含义如下图所示:
在现实生活和工作中,常会有将两台计算机实现资源共享和数据交换的 要求。微机双机直接通讯的方法有很多种,根据两台微机的距离远近,可分 为近程通讯和远程通讯,如果两台通讯的微机在同一间屋内或相距在几十米 到一两百米内,称为近程通讯;如果两台微机相距在几百米到几千米甚至更 远,则把它们之间的通讯称为远程通讯。 由于计算机通讯的广泛应用,串行接口已成为个人计算机必备的部件, IBM PC机内装有通讯适配器板,这使得PC机可以和其它配有串行通讯接 口的计算机或设备进行通讯。串行接口每次由CPU得到8位的数据,然后串 行地通过一条线路,每次发送一位将该数据发送出去。
《单片机原理与应用设计》总结
单片机原理与应用设计第一章单片机概述在一块半导体硅片上集成了中央处理单元(CPU)、存储器(RAM/ROM)、和各种I/O接口的集成电路芯片由于其具有一台微型计算机的属性,因而被称为单片微型计算机,简称单片机。
单片机主要应用于测试和控制领域。
单片机的发展历史分为四个阶段。
1974—1976年是单片机初级阶段,1976—1978年是低性能单片机阶段,1978—1983年是高性能单片机阶段,期间各公司的8位单片机迅速发展。
1983至现在是8位单片机巩固发展及16位、32位单片机推出阶段。
单片机的发展趋势将向大容量、高性能、外围电路内装化等方面发展。
单片机的发展非常迅速,其中MCS-51系列单片机应用非常广泛,而在众多的MCS-51单片机及其各种增强型、扩展型的兼容机中,AT89C5x系列,尤其是AT89C51单片机成为8位单片机的主流芯片之一。
第二章89C51单片机的硬件结构89C51单片机的功能部件组成如下:8位微处理器,128B数据存储器片外最多可外扩64KB,4KB程序存储器,中断系统包括5个中断源,片内2个16位定时器计数器且具有4种工作方式。
1个全双工串行口,具有四种工作方式。
4个8位并行I/O口及特殊功能寄存器。
89C51单片机的引脚分为电源及时钟引脚、控制引脚及I/O口。
电源为5V 供电,P0口为8位漏极开路双向I/O口,字节地址80H,位地址80H—87H。
可作为地址/数据复用口,用作与外部存储器的连接,输出低8位地址和输出/输入8位数据,也可作为通用I/O口,需外接上拉电阻。
P1、P2、P3为8位准双向I/O 口,具有内部上拉,字节地址分别为90H,A0H,B0H。
其中P0、P2口可作为系统的地址总线和数据总线口,P2口作为地址输出线使用时可输出外部存储器的的高8位地址,与P0口输出的低8位地址一起构成16位地址线。
P1是供用户使用的普通I/O口,P3口是双向功能端口,第二功能很重要。
单片机原理及接口技术课后习题第9章答案
第九章复习思考题1. 计算机系统中为什么要设置输入输出接口?输入/输出接口电路是CPU与外设进行数据传输的桥梁。
外设输入给CPU的数据,首先由外设传递到输入接口电路,再由CPU从接口获取;而CPU输出到外设的数据,先由CPU 输出到接口电路,然后与接口相接的外设获得数据。
CPU与外设之间的信息交换,实际上是与I/O接口电路之间的信息交换。
2. 简述输入输出接口的作用。
I/O接口电路的作用主要表达在以下几个方面:〔1〕实现单片机与外设之间的速度匹配;〔2〕实现输出数据锁存;〔3〕实现输入数据三态缓冲;〔4〕实现数据格式转换。
3. 在计算机系统中,CPU与输入输出接口之间传输数据的控制方式有哪几种?各有什么特点?在计算机系统中,CPU与I/O接口之间传输数据有3种控制方式:无条件方式,条件方式,中断方式,直接存储器存取方式。
在无条件方式下,只要CPU执行输入/输出指令,I/O接口就已经为数据交换做好了准备,也就是在输入数据时,外设传输的数据已经传送至输入接口,数据已经在输入接口端准备好;输出数据时,外设已经把上一次输出的数据取走,输出接口已经准备好接收新的数据。
条件控制方式也称为查询方式。
CPU进行数据传输时,先读接口的状态信息,根据状态信息判断接口是否准备好,如果没有准备就绪,CPU将继续查询接口状态,直到其准备好后才进行数据传输。
在中断控制方式下,当接口准备好数据传输时向CPU提出中断请求,如果满足中断响应条件,CPU那么响应,这时CPU才暂时停止执行正在执行的程序,转去执行中断处理程序进行数据传输。
传输完数据后,返回原来的程序继续执行。
直接存储器存取方式即DMA方式,它由硬件完成数据交换,不需要CPU的介入,由DMA 控制器控制,使数据在存储器与外设之间直接传送。
4. 采用74LS273和74LS244为8051单片机扩展8路输入和8路输出接口,设外设8个按钮开关和8个LED,每个按钮控制1个LED,设计接口电路并编制检测控制程序。
IO接口的作用功能定义标准版文档
中断矢量 0003H 000BH 0013H 001BH 0023H 002BH
中断优先级 最高优先级
最低优先级
IP
(0B8H)
—
—
PT2 PS PT1 PX1 PT0 PX0
PX0/PX1:INT0/1优先级控制位: =0 时属低优先级; =1 时属高优先级。
PT0/PT1/PT2:T0/1/2中断优先级控制位: =0 时属低优先级; =1 时属高优先级。
1、线选寻址:用一条或几条地址线对外寻址
P2.7
MCS-51单片机 P2.5 P0口
P2.6
D7-0 /CE Q7-0
/CE AD7-0 A10 A9 A8 RAM (2K)
Q7-0 /CE D7-0
P2.5 做 RAM 片选线
(0000H—07FFH)
P2.2,P2.1,P2.0与P0口共同寻址 2K字节存储单元
二、CPU识别中断申请的依据C:PU识别中断申请的依据:
TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0
地2 数址据线的在输地入址/总输线出中传的送序方名式决C定P具体U地址在每个机器周期的S5P2期间,会自动查
询各个中断申请标志位,若查到某标志位被置
位,将启动中断机制。
TCON:Timer控制寄存器,是管理定时器工作的 SFR(其中低4位管外部中断)
数据协议/格式不同 所需功率/电平不匹配 所需测控点数量不匹配
二、接口与端口
本课程中讲到的接口可以是→器件→电路板卡 →设备/装置→ ……
口地址 → 可寻址的寄存器/端口 地址由选用的地址线条数与地址线名决定
地址线条数n决定:寻址范围 = 2n MCS-51寻址范围 = 216 = 65536 = 64K字节 地址线在地址总线中的序名决定具体地址 一个端口可能有多个口地址; 一个口地址只能唯一地指向某个端口。
第09章 I-O接口
图9-1 9针串口连接器
表9-1 9针串口连接器引脚引出线的说明
引脚 信号 说明 I/O
1 CD 载波检测 输入
2 RD 接收数据 输入
3 TD 发送数据 输出
COM1 3F8-3FFh IRQ4
COM2 2F8-2FFh IRQ3
COM3 3E8-3EFh IRQ4①
COM4 2E8-2EFh IRQ3①
①注意,虽然许多串口可以被设置为与COM1和COM2共享IRQ3和IRQ4,但是并不推荐这种方法。如果可能的话,最好的方法是将COM3设置为IRQ10,将COM4设置为IRQ11。如果需要使用COM3以上的串口,那么最好购买一块专用的串口卡,最好是支持IRQ共享而不发生冲突PCI卡。
9.2.3 高速串口卡
如果用户使用的是运行速率在115Kbps(16550系列UART的最大速率)以上的外部RS-232设备,要使其达到最大的性能,必须使用更强功能的高速串口卡代替现有的串口。大多数高速串口卡支持的初始速率设置为230Kbps或460Kbps以上,当将PC与挂接在串口上的高速外部元件(如ISDN终端适配器)相连接时,该高速性能就显得特别重要。除非串口的传输速率为230Kbps以上,否则并不能利用外部ISDN终端适配器的最高速度。
9 数据位7 22 数据位4回送(GND)
10 确认 23 数据位5回送(GND)
11 忙 24 数据位6回送(GND)
12 纸完 25 数据位7回送(GND)
13 选择
Байду номын сангаас
IO接口
I/O地址空间 I/O
I/O空间 (64KB)
FFFFH
内存空间 (1MB)
FFFFFH
8086 CPU的I/O编址方式 的 编址方式
采用I/O独立编址 独立编址方式(但地址线与存储器共用) 独立编址 来区分: 地址线上的地址信号用 IO/M 来区分: 时为I/O地址 地址 地址/M地址 地址 IO/M=1 /0 时为 I/O操作只使用20根地址线中的16/8根:A15/7 ~ A0 可寻址的I/O端口数为64K(65536)/256个 I/O地址范围为0~FFFFH/0~FFH ~ IBM PC只使用了 根 A9 ~ A0 1024个I/O地址 只使用了10根 只使用了 个 (0~3FFH) 原因 够用为度 简化电路 ~ 原因: 够用为度,
E(64KB)
FFFFFH
2. 独立编址
定义: 相互独立。 定义 外设地址空间和内存地址空间相互独立 相互独立 优点: 优点:内存地址空间不受I/O编址的影响 缺点: 缺点:I/O指令功能较弱,使用不同的读写控制信号 例如: 例如 8088/8086 微机系统 内存地址空间
A0
I/O接口 接口 (1端口 端口) 端口
I/O接口 接口 A1 (4端口 端口) 端口
译码器…
CS
1.4 I/O数据的传送方式 数据的传送方式
并行 定义: 定义 一个数据单位(通常 为字节 字节)的各位同时传送 字节 特点: 特点 速度快、距离短、成 本高 例如: 例如:PC机的并行接口(通 常用于连接打印机) 串行 定义: 定义 数据按位进行传送 按 特点: 特点 速度慢、距离远、成 本低 例如: 例如: PC机的串行接口(通 常用于串行通信)
1.3 I/O端口地址的译码 端口地址的译码
第九章I-O接口
第九章I/O接口输入输出端口简介串行端口异步的串口是作为计算机到计算机的通信端口来设计的。
异步意味着不存在同步的时钟信号,所以能够以任意时间间隔来发送字符。
串行是指发送一个字节字符的八位二进制位时是按顺序一位一位的发送了,而接收也是一位一位地接收,而不是八位同时传送。
更形象地说,串行是数据通过一条单独的导线传送,并且当发送数据位时,每个数据位都按顺序被串接起来。
串行传输的典型例子是我们日常生活中所用的电话系统,它在每个方向都提供了一条传送数据的导线。
串口的典型位置计算机系统一般都有一个或两个串行端口,通常位于系统的后部。
这些内置的串口可以通过主板上的Super I/O芯片控制,或通过South Bridge芯片控制。
如果系统提供的串口数目不能满足需要,用户可以购买单口或多口串口卡。
串口可以连接多种设备,例如调制解调器、绘图仪、打印机、其他计算机、条形码阅读器、标尺(scale)和设备控制电路。
AT结构的9针串口连接器的规范说明官方规范所建议的最大电缆长度为50英尺。
其限制因素是电缆及接口输入电路的总负荷电容。
最大电容值被指定为2500pF。
有些特殊的低电容电缆实际上可以极大地增加电缆的最大长度,使之达到500英尺或更多。
此外,线路驱动程序(放大器/中继器)还可以将电缆的长度扩展到更长。
表9-1、表9-2和表9-3中给出的是9针(AT结构)、25针、9转25针串行连接器引脚引出线的说明。
表9-1 9针(AT)串口连接器引脚信号说明I/O1 CD 载波检测输入2 RD 接收数据输入3 TD 发送数据输出4 DTR 数据终端就绪输出5 SG 信号地-6 DSR 数据准备好输入7 RTS 发送请求输出8 CTS 消除发送输入9 RI 振铃指示输入表9-2 25针(PC、XT及PS/2)串口连接器引脚信号说明I/O1 - 机架接地-2 TD 发送数据输出3 RD 接收数据输入4 RTS 发送请求输出5 CTS 消除发送输入6 DSR 数据准备好输入7 SG 信号地-8 CD 载波检测输入9 - +发送当前循环返回输出11 - -发送当前循环数据输出18 - +接收当前循环数据输入20 DTR 数据终端就绪输出22 RI 振铃指示输入25 - -接收当前循环返回输入标准25针串口连接器的规范说明表9-3 9转25针串行电缆适配器连接9针25针信号说明1 8 CD 载波检测2 3 RD 接收数据3 2 TD 发送数据4 20 DTR 数据终端就绪5 7 SG 信号地6 6 DSR 数据准备好7 4 RTS 发送请求8 5 CTS 消除发送9 22 RI 振铃指示串口的配置当在系统中安装串口时,必须为这些串口设置其所使用的具体I/O地址(称为端口)和中断(对于中断请求来说被称为中断请求线)。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第九章I/O接口输入输出端口简介串行端口异步的串口是作为计算机到计算机的通信端口来设计的。
异步意味着不存在同步的时钟信号,所以能够以任意时间间隔来发送字符。
串行是指发送一个字节字符的八位二进制位时是按顺序一位一位的发送了,而接收也是一位一位地接收,而不是八位同时传送。
更形象地说,串行是数据通过一条单独的导线传送,并且当发送数据位时,每个数据位都按顺序被串接起来。
串行传输的典型例子是我们日常生活中所用的电话系统,它在每个方向都提供了一条传送数据的导线。
串口的典型位置计算机系统一般都有一个或两个串行端口,通常位于系统的后部。
这些内置的串口可以通过主板上的Super I/O芯片控制,或通过South Bridge芯片控制。
如果系统提供的串口数目不能满足需要,用户可以购买单口或多口串口卡。
串口可以连接多种设备,例如调制解调器、绘图仪、打印机、其他计算机、条形码阅读器、标尺(scale)和设备控制电路。
AT结构的9针串口连接器的规范说明官方规范所建议的最大电缆长度为50英尺。
其限制因素是电缆及接口输入电路的总负荷电容。
最大电容值被指定为2500pF。
有些特殊的低电容电缆实际上可以极大地增加电缆的最大长度,使之达到500英尺或更多。
此外,线路驱动程序(放大器/中继器)还可以将电缆的长度扩展到更长。
表9-1、表9-2和表9-3中给出的是9针(AT结构)、25针、9转25针串行连接器引脚引出线的说明。
表9-1 9针(AT)串口连接器引脚信号说明I/O1 CD 载波检测输入2 RD 接收数据输入3 TD 发送数据输出4 DTR 数据终端就绪输出5 SG 信号地-6 DSR 数据准备好输入7 RTS 发送请求输出8 CTS 消除发送输入9 RI 振铃指示输入表9-2 25针(PC、XT及PS/2)串口连接器引脚信号说明I/O1 - 机架接地-2 TD 发送数据输出3 RD 接收数据输入4 RTS 发送请求输出5 CTS 消除发送输入6 DSR 数据准备好输入7 SG 信号地-8 CD 载波检测输入9 - +发送当前循环返回输出11 - -发送当前循环数据输出18 - +接收当前循环数据输入20 DTR 数据终端就绪输出22 RI 振铃指示输入25 - -接收当前循环返回输入标准25针串口连接器的规范说明表9-3 9转25针串行电缆适配器连接9针25针信号说明1 8 CD 载波检测2 3 RD 接收数据3 2 TD 发送数据4 20 DTR 数据终端就绪5 7 SG 信号地6 6 DSR 数据准备好7 4 RTS 发送请求8 5 CTS 消除发送9 22 RI 振铃指示串口的配置当在系统中安装串口时,必须为这些串口设置其所使用的具体I/O地址(称为端口)和中断(对于中断请求来说被称为中断请求线)。
关于设置这些设备的最好方法是采用现有的标准。
对于设置串口,可以使用表9-4中列出的地址和中断号。
表9-4 标准串行I/O端口的地址和中断COMx I/O端口IRQCOM1 3F8-3FFh IRQ4COM2 2F8-2FFh IRQ3COM3 3E8-3EFh IRQ4①COM4 2E8-2EFh IRQ3①①注意,虽然许多串口可以被设置为与COM1和COM2共享IRQ3和IRQ4,但是并不推荐这种方法。
如果可能的话,最好的方法是将COM3设置为IRQ10,将COM4设置为IRQ11。
如果需要使用COM3以上的串口,那么最好购买一块专用的多串口卡最好是支持IRQ共享而不发生冲突PCI卡。
注意,BIOS生产商从来没有将支持COM3和COM4的信息写入BIOS。
因此,由于DOS是从BIOS中读取I/O信息,所以DOS不能对COM2以上的串口进行操作。
在POST(加电自检)期间,BIOS将找出系统中所安装的元件及其所在位置。
POST将仅仅检验所安装的前两个端口。
因为Windows 9x/Me/2000和Windows XP都内置有对串口的支持,并且最多可以支持128个串口,所以在Windows环境下,并不存在该类问题。
由于Windows中可以支持多达128个串口,所以在Windows系统中可以方便地使用多串口卡。
多串口卡可以使得系统仅仅通过使用一个插槽和一个中断就能够从多个设备采集数据,或者与多个设备共享数据。
在COM端口(或一切设备)之间共用中断有时可以正常工作,但是其他情况则不允许。
因此建议最好不要在串口之间共用中断。
串口的测试可以对串口和并口进行多种方式的测试。
最常见的两种测试类型是:纯软件测试、既涉及硬件加软件的测试。
纯软件测试是通过使用诊断程序进行的,例如Microsoft的MSD或Windows 9x/Me/2000自带的Modem诊断工具。
反之,同时涉及软件和硬件的测试则要通过使用短路环(wrap plug)及测试程序来回送测试。
Microsoft系统诊断程序微软系统诊断程序(MSD)是在MS-DOS 6.X、Windows 3.x和Windows 9x/Me/2000中附带的一个测试程序。
请注意,在Windows 95的软件包中,可以在CD-ROM的\other\msd目录下找到该程序,而在Windows 98/Me/2000的软件包中,则可以在CD-ROM的\tools\oldmsdos目录下找到它。
在安装操作系统时,并不会自动安装MSD。
如果要使用该程序,那么必须直接从CD-ROM运行,或者将该程序从CD-ROM复制到硬盘上。
如果要得到最正确的结果,那么最好在纯DOS环境下运行这些测试程序,例如MSD。
鉴于这个原因,在使用这些程序之前,需要在DOS模式下重新启动机器。
MSD至少可以用于帮助判断串口是否有响应。
如果MSD不能确定端口的存在,那么它给出的报告中不会表示存在有该端口。
Windows中的I/O端口故障诊断Windows中通过设备管理器可以采取下列步骤来判断一个特殊串口的I/O地址和IRQ设置是否正确:1)用右键点击桌面上“我的电脑”图标,选择“属性”或者双击“控制面板”中的“系统”图标并选择“属性”。
点击“设备管理器”标签,接着点击“端口”并选择一个特定端口(例如COM1)。
2)点击“属性”按钮,然后点击“资源”标签则将显示端口的当前资源设置情况。
3)检查“冲突设备列表”以查看端口是否正在使用与其他设备相冲突的资源。
如果端口与其他设备发生冲突,那么可以点击“更改设置”按钮,然后再选择一种不会引起资源冲突的设置。
可能要通过对这些设置进行实验才能找出正确的参数。
4)如果不能更改资源设置,那么这些参数极有可能是要通过BIOS设置进行修改。
这样只有关机并重新起动系统,接着进入BIOS设置,在此修改端口设置。
当串行鼠标或其他设备使用了COM1口时,如果在COM3口使用调制解调器,那么将会有错误发生。
在一般情况下,COM1口和COM3口使用的是相同的IRQ,这就意味着不能同时使用这两个端口。
如果可能的话,可以将COM3口或者COM4口的IRQ设置修改为不与COM1口或COM2口相冲突。
同时还要注意,有些显示适配器自动设置的地址与COM4相冲突。
使用短路环测试的高级诊断将一个专门的短路环接在被测试的端口上进行外部的回送测试是一种实用、有效的测试方法。
当进行测试时,测试程序控制测试端口的发送引角(TD)向短路环发送数据,短路环将数据再送回端口的接收引脚(RD),使得端口同时进行发送和接收。
短路环就是一段被对折了的电缆。
联想标配的工具中带有串口短路环,进行回送测试的软件可以用AMIDAIG。
使用短路环的一个好处是,可以将这些插头插在测试所涉及的电缆的末端。
这样可以保证电缆和接口均工作正常。
并行端口并口之所以被称为并口,是因为它有8条数据线,可以通过这8条数据线同时发送包含了数据的一个字节的所有数据位。
该接口的传输率快,传统上被用于打印机。
然而,因为并口一次可以传送4个数据位,所以在这方面,并口的性能要优于一次只能传送1位的串口,所以在系统间传送数据的程序总是将并口作为传送数据的一种选择。
并口通信所面临的惟一问题是,如果没有放大信号,就不能将并口电缆进行较大的延长,否则所传输的数据将出错。
表9-5说明了标准PC并口的引脚引出线。
IEEE 1284并口标准IEEE 1284标准(被称为“个人计算机双向并行外围接口的标准信号发送方法”)的最终版本于1994年3月被批准。
该标准定义了并口的物理特性,包括数据传送模式和物理及电气规范。
IEEE 1284定义了多模式并口到PC的电气信号状态,该并口可以支持多达4个数据位模式的操作。
1284规范并不要求并口支持所有的这些模式,该标准还为支持一些额外的模式作了准备。
IEEE 1284规范被用于标准化PC和附加设备间的行为,尤其是附加的打印机。
然而,外围设备(可移动介质驱动器、扫描仪等等)的提供商对该规范颇感兴趣。
IEEE 1284只是硬件和控制线路的标准,并没有定义软件与端口进行对话的方式。
由原始1284规范所衍生的一个条约则定义了软件接口。
已经成立的IEEE 1284.3委员会负责研究一种软件标准,与IEEE 1284规范兼容的硬件都将使用该标准。
该标准的研究主要是为了规范并口芯片厂商之间的差异,它包含借助于PC的系统BIOS来支持EPP(Enhanced Parallel Port,增强的并行端口)模式的规范。
IEEE 1284支持在计算机与打印机之间或两台计算机之间以更高的吞吐量进行连接。
其结果是所使用的打印机电缆不再是标准的打印机电缆。
IEEE 1284规范中的打印机电缆使用了双绞线技术,这样使得连接更加可靠而且无差错。
IEEE 1284标准还定义了并口连接器,其中包括两种现有的类型(称为A型和B型)和一种被称为C型的高密度连接器。
A型指的是标准的DB25连接器,它被用于大多数PC系统并口的连接中,而B型指的是大多数打印机中标准36针Centronics模式的连接器。
C型是一种新的高密度36针的连接器,市场上新出现的一些打印机使用的就是该类型的连接器,例如惠普公司的产品。
这三种连接器如下图所示。
IEEE 1284并口标准定义了五种不同的端口操作模式,其中着重强调了具有更高传输率的EPP和ECP模式。
有些模式仅仅用于输入,而其他模式仅仅用于输出。
将这5种模式进行组合,总共可以得到4种不同的端口类型,这些端口类型如表9-6所示。
IEEE 1284定义的并口模式如表9-7所示,表中还列出了近似的传输率。
IEEE 1284规范中三种不同类型的并口连接器表9-6 IEEE-1284端口类型并口类型输入模式输出模式注释SPP(标准并口)半字节兼容4位输入,8位输出双向并口字节兼容8位 I/OEPP(增强型并口)EPP EPP 8位 I/OECP(扩充能力端口)ECP ECP 8位 I/O,使用DMA表9-7 IEEE-1284并口模式并口模式方向传输率半字节(4位)只输入50KB/秒字节(8位)只输入150KB/秒兼容只输出150KB/秒EPP(增强型并口)输入/输出500KB-2MB/秒ECP(扩充能力端口)输入/输出500KB-2MB/秒高速并口(例如,EPP和ECP类型的并口)经常被用来支持诸如ZIP驱动器、CD-ROM驱动器、扫描仪、磁带机,甚至硬盘等外设。