第七章接口与并行通信do.doc
并行通信及接口
PA7~PA0
PC6
PC7
D7~D0
PC4
PC5
IBFA
INTEA2
INTEA1
PC3
INTRA
方式2的时序:
PB7~PB0
PA7~PA0
-STB
IBF
-RD
外设送来数据
D7~D0
送往外设数据
数据写入端口
-WR
-OBF
INTR
-ACK
当INTE=1时
*
8255A的初始化
8255A的各种工作方式由CPU对8255A写入控制命令字来设定,这个过程称为“初始化”。
PA7~PA0
PC7
PC6
PC3
INTEA
INTRA
D7~D0
输出设备
(到CPU)
PB7~PB0
PC1
PC2
PC0
INTEB
D7~D0
INTRB
输出设备
(到CPU)
△ INTR——ACK#上升沿产生,8255输出。=1时请求CPU输出下一个数据(通常接到8259)。 A组对应PC3;B组对应PC0。 △ INTE——中断允许位,NTE=1和OBF#为高电平时,允许产生INTR信号。无引出。
PA7~PA0
PC4
PC5
PC3
INTEA
IBFA
INTRA
D7~D0
输入设备
(到CPU)
PB7~PB0
PC2
PC1
PC0
INTEB
D7~D0
IBFB
INTRB
输入设备
(到CPU)
方式1输入时序:
PB7~PB0
PA7~PA0
STB
第7章并行接口-精品
习惯上将A口和B口作为数据口,将C口作 为控制输出和状态输入口。
6
微计算机系统
图7.4 8255A方式0输入时序和参数说明
7
2.方式l (A口和B口有此方式,单向)微计算机系统 (1)方式l的输入
图7.6 A口和B口方式l的输入组态
8
微计算机系统
第7章 并行接口
7.1 并行接口概述
并行接口和串行接口的结构示意图
微计算机系统
并行接口传输速率高,一般 不要求固定格式,但不适合 长距离数据传输
1
7.2 可编程并行接口芯片82C55 7.2.1 8255的基本功能
微计算机系统
1. 8255具有2个独立的8位I/O口(A口和B口)和2个独 立的4位I/O(C口上半部和C口下半部),提供TTL 兼容的并行接口。作为输入时提供三态缓冲器功能 ,作为输出时提供数据锁存功能。其中,A口具有 双向传输功能。
◆ Centronics并行打印接口标准
28
微计算机系统
29
◆ Centronics并行接口时序
微计算机系统
30
微计算机系统
◆ 表7.3主机-打印机接口信号连线表
31
控制字锁存器
微计算机系统
状态端口
控制字格式
状态字格式
微机系统中打印机卡1的地址是: 数据口0378H、状态口0379H、控制口037AH
;8255命令口
MOV AL,00001000B ;置PC4=0,禁止中断请求
OUT DX,AL
⊙ 若允许PA口输出中断请求
MOV DX,303H
;8255命令口
MOV AL,00001101B ;置PC6=1,允许中断请求
第7章 并行接口和并行通信
J1的方式控制字如下图
也就是83H,应写入J1的控制口0026H 如果又要求J2的 A口:方式0,输入; B口:方式1,输出 C高:输出 C低:配合B口;控制字为下图
• • • • • • • •
也就是94H,应写入J2控制口2E 初始化程序如下: MOV AL,83H MOV DX,0026H OUT DX,AL MOV AL,94H MOV DX,002EH OUT DX,AL
方式1 ⑴方式1的工作特点
• 也叫选通的输入输出方式, A 或 B 口输入输出时, 必须用C口提供的选通信号和应答信号,且应答 含义固定。 • 方式1有如下特点: • ① A、B口均可工作于方式1,可输入可输出。 • ② A或B口方式1时,需C口3位 • 配合其工作,其余位仍可输入输出。 • 如A、B口均工作于方式1,需C口6位配合他们工 作,余下2位输入输出
• 3要求 • ① 在整个读出期间,地址信号保持有 效 • ② 输入数据必须保持到读信号消失后 才消失 • ③ 要求读脉冲的宽度至少为300ns • 要求①易于满足(8086配备地址锁存器), 要求②取决于输入设备。 • 难怪方式0不常用,无应答信号,太不牢 靠了。
图7.6 是方式0输出时序(也较简单)
图7.10为方式1输出时控制信号和状态信号
• ②ACK(acknowledge):外设响应信号 • 外设送 8255 ,表明 CPU 通过 8255 输出的数 据已送到外设。 • ③INTR(Interrupt request):中断请求信号 • 当外设取走数据,ACK有效后,8255向 CPU发新的中断请求 • ④INTE(Interrupt enable):中断允许信号 • 为“1”时端口处于中断允许状态,由软件 设置,PC6=1则INTEA=1 PC2=1则INTEB=1
第7章 并行通信和并行接口
第 7章
并行接口
(1)方式1的输入
A组工作于方式1输入的控制字 D7 D6 D5 D4 D3 D2 D1 D0 1 0 1 1 1/0 B组工作于方式1输入的控制字 D7 D6 D5 D4 D3 D2 D1 D0 1 PC6、PC7: 1—输入 0—输出 端口A为输入 PA7~PA0 INTE PC4 A PC5 1 1 端口B为输入 方式1
INTE IBF INTR
图7.6 方式1的输入组态 19 西南交通大学计算机与通信工程学院
第 7章
并行接口
对于各控制信号,说明如下:
① STB (Strobe):选通信号输入端,低电平有效,由 外设送往8255A。有效时,外设将一个8位数据,打入 8255A的输入缓冲器中。 ② IBF(Input Buffer Full):缓冲器满信号,高电平有 效。是8255A输出给外设的联络信号,作为 STB 的响应。 当其有效时,表示数据已经输入到 8255的输入缓冲器 中,且数据未被 CPU取走,通知外设停止送数。查询 方式时可以读取该信号状态以确定 CPU是否从 8255读 STB 取数据。IBF信号是由 信号使其置位,而由读信 号 的后沿即上升沿使其复位。 RD
( OBFA ) ( ACKA )
( IBFA ) ( INTRB ) ( OBFB ) ( IBFB ) ( ACKB ) ( STB B ) ( INTRA )
( STB A )
PA3 PA2 PA1 PA0 RD CS GND A1 A0 PC7 PC6 PC5 PC4 PC0 PC1 PC2 PC3 PB0 PB1 PB2
(2)与外部设备的连接信号
PA7~PA0:端口A与外设连接的数据线,输入/输出线。 PB7~PB0:端口B与外设连接的数据线,输入/输出线。 PC7~PC0:端口C与外设连接的数据线,输入/输出线。分为两组 (高4位、低4位)。
并行接口概述
设置PC4=1
设置PC2=0
方式2——双向选通输入/输出 只有A口可以工作在此方式下,并且A口既做输入口又做输出口(双向输入/输出) 有专门的联络信号,由C口的5个引脚担任,C口剩下的3个引脚可以作输入/输出,也可用作B口方式1的联络线 可采用查询或中断传送 各联络信号间的时序和状态字基本是方式1下的输入和输出时的时序和状态字的组合
送出的数据8位均有效
方式1——选通输入/输出方式 只有A、B口可以工作在此方式下 有专门的联络信号,由C口的6个引脚担任, C口剩下的2个引脚还可以作输入/输出 联络信号间有固定时序,有确定的状态字 可以进行查询传送或中断传送 单向输入/输出,输入、输出时都可以锁存
方式1下输入时的引脚
外设将数据送到A口的数据输入寄存器
完整的程序
DATA SEGMENT BUFF DB 'This is a print program!' CNT EQU $-BUFF DATA ENDS CODE SEGMENT ASSUME CS:CODE, DS:DATA START:MOV AX, DATA MOV DS, AX MOV AL, 10001000B OUT 03H, AL ;8255A初始化
INTEB
输出时
用途:为查询方式提供状态位;在查询中断方 式中,CPU也要通过状态字来识别中断源
[例] 若允许A组输入时申请中断,则必须设置INTEA(PC4)为1,若禁止B组输入/出时申请中断,则必须设置INTEB(PC2)为0,已知8255A的端口地址为300H~303H。 MOV AL, 00001001B MOV DX, 303H OUT DX, AL MOV AL, 00000100B OUT DX, AL
第7章 并行通信和并行接口
A组方式选择 00-方式0 01-方式1 1x-方式2 端口A:1-输入 0-输出
8255A的 三种基本工作方式: (1)方式0 —— 基本输入/输出方式。端口A、B、C都可 工作在此方式。 (2)方式1 —— 选通输入/输出方式,端口A、B可以工作 在此方式。端口C作联络信号。 (3)方式2 —— 双向输入/输出方式,只有端口A可以工作 在此方式,端口C作为它的联络信号。 说明:属于同一组的两个端口可以同时工作在输入或输出 方式,也可以分别工作在输入或输出方式,不要求一定同为输 入方式或同为输出方式。
4. 8255A的工作方式
(1)方式0 —— 基本输入/输出 方式0的工作特点: ① 任何一个端口(端口 A、端口 B、C口上半部、 C口下半部) 可作为输入口,也可作为输出口,各端口之间没有必然的联系。 ② 各个端口的输入或输出,可以有16种不同的组合,所以可 以适用于多种使用场合。(2*2*2*2=16) 方式0的使用场合有两种: ① 同步传送(即无条件传送)。 ② 查询式传送:A、B作为数据端口,C的其中4位规定为输 入口,用来输出一些控制位,C的另外4位规定为输出口,用来读 取外设的状态。
方式1:输入 ① 方式1输入时的联络信号 • 三条控制线 STB(PC4/PC2):选通输入 IBF(PC5/PC1):输入缓冲器满 INTR(PC3/PC0):中断请求信号 • 中断允许信号 INTE :仅对应于PC4/PC2内部寄存器内容。
② 方式1输入方式的时序
STB
1 2 4 3
INTR CPU 中断响应 8255 IBF 1 0 STB = 0 外设
方式1的使用场合:
中断方式 查询方式
(3)方式2 —— 双向数据传送 只适用于端口A ,此时端口C的PC7~PC3自动配合端口A作为 控制端口。 方式2的控制信号 INTR(PC3) OBF(PC7) ACK(PC6) STB(PC4) IBF(PC5) INTE1(PC6内部寄存器):输出中断允许 INTE2(PC4内部寄存器):输入中断允许 中断方式 方式1的使用场合: 查询方式 这些信号意 义同方式1
接口_第7章 并行接口
为了实现对各绕组按一定方式轮流加电,需要 一个脉冲循环分配器。
脉冲循环分配器
硬件电路
软件方法
控制字法
循环查表法
循环查表法:是将各绕组加电顺序的控制代码制成 一张表----步进电机相序表,存放在内存区,再设 置一个地址指针。
相序表的建立,要考虑两个因素:
应根据步进电机运行方式的要求
步进电机的各相绕组与数据线连接的对应关系
格式:其中最高位是特征位,一定要写1,其余 各位定义如下:
例1:要把A口指定为1方式,输入,C口上半部为输 出;B口指定为0方式,输出,C口下半部定为输 入,则工作方式命令代码是:10110001B或B1H。
初始化的程序段为:
MOV DX,303H MOV AL,0B1H ;8255A命令口地址(假设) ;初始化命令
;关闭SPK
WAIT1:MOV DX,302H ;查SW按下? IN AL,DX AND AL,04H JNZ WAIT1 ;SW没按下,等待 BEGIN:CALL LED_FLASH ;调用LED发光子程序(全亮) MOV BX,200 MOV T,0FFFH ;T为字型变量,存延迟参数 SPEAK_H:CALL OUTSPK ;调用喇叭发声子程序 DEC BX JNZ SPEAK_H MOV DX,300H ;LED全灭 MOV AL,00H OUT DX,AL
① 面向系统总线的信号线
面向数据总线的有: D0~D7:双向数据线,用于CPU向8255A发送命 令、数据和8255A向CPU回送状态、数据等。 面向地址总线的有: CS:片选信号。 A0, A1:片内端口地址信号。
面向控制总线的有:
RD:读信号,低电平有效。
WR:写信号,低电平有效。
第7章_并行接口电路
B组
RESET:高有效, 8255A内部寄 存器清零, 3个端口均为输入。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
40 39 38 37 36 35 34 33 32 31 30 29 28 Βιβλιοθήκη 7 26 25 24 23 22 21
PA4 PA5 PA6 PA7
94H
J1:A口,方式0,输出 B口,方式0,输入 C口高,输出 C 口低,输入 地址:108H~10EH,控制字:83H J2:A口,方式0,输入 B口,方式1,输出 C口高,输出 地址:100H~106H,控制字:94H MOV MOV OUT MOV MOV OUT AL, 83H DX, 10EH DX, AL ;J1控制口 AL, 94H DX, 106H DX, AL ;J2控制口
RD WR
A0 A1 RESET A组 控制 A组 端口 A (8) I/O PA7~PA0
A组 端口 C 上半部 (4) DB 数据总线 缓冲器 8位内部数据总线 B组 端口 C 下半部 (4)
I/O PC7~PC4
I/O PC3~PC0
读 /写控 制逻辑
B组 控制
B组 端口 B (8)
I/O PB7~PB0
CPU DB CPU CB
D0~D7
RESET CPU AB
RD WR
A0 A1
I/O PA7~PA 0 I/O PC 7~PC4 8255A I/O PC3~PC 0 I/O PB7~PB0
外 设
CS
A1 , A0:8255A内部寄存器地址寻址信号,8255A内部有4 个端口,A,B,C与控制口。 A A 端口
第七章 并行通信与并行接口一、概述二、并行接口芯片 Intel .
发声频率 发声时间
sog_f sog_t
dw 330, 330, 330, 392, 330, 330, 294, 262, 220, 262, 294, 330, 0 dw 20, 20, 20, 20, 40, 20, 20, 20, 20, 20, 20, 80, 0
ቤተ መጻሕፍቲ ባይዱ
Stack
Stack Data Sog_f Sog_t Data Code
① 用BIOS功能调用 INT 1AH;(由于8253计数器0 55ms申请一次中断,所以 此方法实现不了任意时间的延时)。
② 改变 8253 计数器0 的计数初值,使其可以以任意时间申请中断;(太复杂)。
③ 延时子程序 ;
综上所述,我们得到了使喇叭发声的频率和时间,因此,就可以控制喇叭发声了。
下面我们看一个喇叭发声过程子程序。 声音频率在 di 寄存器中;发声时间在bx中(几个10ms)。 Sound proc far push ax push dx push di push bx push cx mov al, 0b6h
A1 0 0 1 1 A0 0 1 0 1 CS 0 0 0 0 端口 端口A 端口B 端口C 控制字寄存器
3. 8255A的端口的工作过程
(1) 方式 0
方式 0 是一种基本的输入或输出方式。
• 三个端口的每一个都可由程序选定作为输出或输入; • 没有固定的用于应答的联络信号。
故方式 0 : • 可用于无条件传送的接口电路;
segment
db 100 dup(?) ends segment dw 330, 330, 330, 392, 330, 330, 294, 262, 220, 262, 294, 330, 0 dw 20, 20, 20, 20, 40, 20, 20, 20, 20, 20, 20, 80, 0 ends segment assume cs:code, ds: data, ss: stack
七章并行通信接口技术-
控制/状态口除了指示两组数据口的状态及选通 信号外,还可用做I/O口,如PC6和PC7,用位控 方式传送
端口A方式1作输入:
PA7~PA0 INTEA PC4
PC5
PC3
数据选通信号 表示外设已经准备好数据
STBA IBFA
INTRA
状态信号可以通过读取端口C得到(P287)
8255A工作在方式1下的输入时序
端口A方式1作输出:
PA7~PA0 INTEA PC6
PC7
PC3
外设响应信号 表示外设已经接收到数据
ACKA OBFA
INTRA
输出缓冲器满信号 表示CPU已经输出了数据
中断允许触发器
中断请求信号 请求CPU再次输出数据
将数据分解成二进制位用一条信号线, 既传送数据信息,又传送控制信息
要求数据格式固定,分为异步和同步数 据格式
串行通信中对信号的逻辑定义与TTL不 兼容,需进行逻辑关系和逻辑电平转换
串行传送信息的速率需要控制,要求双 方约定通信传输的波特率
可编程并行接口芯片8255A
1.8255A有两个8位(端口A与端口B)和两个4 位(端口C高/低4位)的并行输入/输出端口
初始化编程后:
当数据端口作为输入接口时,执行输入IN指 令将从输入设备得到外设数据
当数据端口作为输出接口时,执行输出OUT 指令将把CPU的数据送给输出设备
8255A具有锁存输出数据的能力
对输出方式的端口同样可以输入,但不是读 取外设数据,读取的是上次CPU给外设的数 据
读写数据端口:示例
1.面向CPU一侧的引脚信号
第七章 接口与并行通信
第一讲:第七章接口与并行通信回顾:微机系统结构及控制信号的名称和作用。
本讲重点:I/O接口概述,CPU与I/O接口,I/O接口与系统的连接。
讲授内容:7.1 CPU与外设之间的数据传输一.CPU与I/O接口接口电路按功能可分为两类:①是使微处理器正常工作所需要的辅助电路:时钟信号或中断请求等;②是输入/输出接口电路:CPU与外部设备信息的传送(接收、发送)。
最常用的外部设备:如键盘、显示装置、打印机、磁盘机等都是通过输入/输出接口和总线相连的,完成检测和控制的仪表装置也属于外部设备之列,也是通过接口电路和主机相连。
1.为什么要用接口电路:需要分析一下外部设备的输入/输出操作和存储器读/写操作的不同之处:存储器都是用来保存信息的,功能单一,传送方式单一(一次必定是传送1个字节或者1个字),品种很有限(只有只读类型和可读/可写类型),存取速度基本上和CPU的工作速度匹配.。
外部设备的功能多种多样的(输入设备,输出设备,输入设备/输出设备),信息多样(数字式的,模拟式的),信息传输的方式(并行的,串行的),外设的工作速度通常比CPU的速度低得多,而且各种外设的工作速度互不相同,这也要求通过接口电路对输入/输出过程起一个缓冲和联络的作用。
注:接口电路完成相应的信号转换、速度匹配、数据缓冲等功能2.接口的功能(8种):⑴寻址能力:对送来的片选信号进行识别。
⑵输入/输出功能:根据读/写信号决定当前进行的是输入操作还是输出操作。
⑶数据转换功能:并行数据向串行数据的转换或串行数据向并行数据的转换。
⑷联络功能:就绪信号,忙信号等。
⑸中断管理:发出中斯请求信号、接收中断响应信号、发送中断类型码的功能。
并具有优先级管理功能。
⑹复位:接收复位信号,从而使接口本身以及所连的外设进行重新启动。
⑺可编程:用软件来决定其工作方式,用软件来设置有关的控制信号。
⑻错误检测:一类是传输错误。
另—类是覆盖错误。
注:一些接口还可根据具体情况设置其它的检测信息。
第7章并行接口
• MOV DX,303H • MOV AL,04H • OUT DX,AL
;位置位/复位命令
• • • • • • • • • • • • •
利用按位输出高/低电平的特性还可以产生正、负脉冲或方波输出,对I/O设备进行控制。 例如,利用82C55的PC7产生负脉冲,作打印机接口电路的数据选通信号,其汇编语言程序段如下。 MOV DX,303H MOV AL,00001110B OUT DX,AL NOP ;维持低电平 ;置PC7=1 ;82C55A命令端口 ;置PC7=0
7.4 82C55A在微机系统中的应 用
• 并行接口的应用有两种情况:一种是微机系统配置的82C55A,另一
种是用户扩展的82C55A。对系统配置的82C55A,已经用于控制键 盘、扬声器、定时器。其中,把PA端口分配做键盘接口,把PB端口 分配做机内的扬声器接口,并由BIOS进行了初始化,用户不能更改 ,但可以按照初始化的要求加以利用。
2.82C55A内部寄存器
• 82C55A内部包含4个部分:①数据总线缓冲器;②读/写控制逻辑;③
输入/输出端口PA、PB、PC;④A组和B组控制电路,其内部结构如图 7.2所示。
• “读/写控制逻辑”中设置有命令寄存器,接收CPU发来的命令字。 • 3个8位输入/输出端口(Port),提供给用户连接I/O设备使用。每个端
• 由于使用82C55A的0方式构成的并行接口在与
CPU交换数据时,只能采用无条件或查询方式 传送,不能采用中断方式。因此,0方式不要求 使用专用的联络(应答)信号和固定的工作时 序,也不设置专用的工作状态字。它是82C55A 的三种方式中与I/O设备连接最简单,使用很自 由的一种,下面举例说明82C55A的0方式的应 用。
第七章 接口与并行通信
第一讲:第七章接口与并行通信回顾:微机系统结构及控制信号的名称和作用。
本讲重点:I/O接口概述,CPU与I/O接口,I/O接口与系统的连接。
讲授内容:7.1 CPU与外设之间的数据传输一.CPU与I/O接口接口电路按功能可分为两类:①是使微处理器正常工作所需要的辅助电路:时钟信号或中断请求等;②是输入/输出接口电路:CPU与外部设备信息的传送(接收、发送)。
最常用的外部设备:如键盘、显示装置、打印机、磁盘机等都是通过输入/输出接口和总线相连的,完成检测和控制的仪表装置也属于外部设备之列,也是通过接口电路和主机相连。
1.为什么要用接口电路:需要分析一下外部设备的输入/输出操作和存储器读/写操作的不同之处:存储器都是用来保存信息的,功能单一,传送方式单一(一次必定是传送1个字节或者1个字),品种很有限(只有只读类型和可读/可写类型),存取速度基本上和CPU的工作速度匹配.。
外部设备的功能多种多样的(输入设备,输出设备,输入设备/输出设备),信息多样(数字式的,模拟式的),信息传输的方式(并行的,串行的),外设的工作速度通常比CPU的速度低得多,而且各种外设的工作速度互不相同,这也要求通过接口电路对输入/输出过程起一个缓冲和联络的作用。
注:接口电路完成相应的信号转换、速度匹配、数据缓冲等功能2.接口的功能(8种):⑴寻址能力:对送来的片选信号进行识别。
⑵输入/输出功能:根据读/写信号决定当前进行的是输入操作还是输出操作。
⑶数据转换功能:并行数据向串行数据的转换或串行数据向并行数据的转换。
⑷联络功能:就绪信号,忙信号等。
⑸中断管理:发出中斯请求信号、接收中断响应信号、发送中断类型码的功能。
并具有优先级管理功能。
⑹复位:接收复位信号,从而使接口本身以及所连的外设进行重新启动。
⑺可编程:用软件来决定其工作方式,用软件来设置有关的控制信号。
⑻错误检测:一类是传输错误。
另—类是覆盖错误。
注:一些接口还可根据具体情况设置其它的检测信息。
微机原理与接口技术第7章 并行IO接口
(4)A组和B组控制电路
在8255A的工作方式2和3中,PC口分成两个部分配合PA口和PB口 工作。其中PC口的高4位与PA口构成A组;PC口的低4位与PB口构成 B组。每一组都有相应的控制电路,即A组控制电路和B组控制电路。
其中A组部件控制PA口和PC口的高4位(PC7~PC4); B组部件控 制PB口和PC口的低4位(PC3~PC0)。
7.2.2 8255A控制字
8255A有两个控制字,即工作方式控制字和PC口位操作控制字。 两个控制字共用一个端口地址,用特征位D7来区分。 (1)工作方式控制字(D7=1)
工作方式控制字如图7-5所示,各位的作用如下: D2:选择端口B的工作方式0或1; D1:设置端口B的输入/输出方式; D0:设置端口C低4位的输入/输出方式。 D6 D5:选择端口A的工作方式; D4:设置端口A的输入/输出方式; D3:设置端口C高4位的输入/输出方式。
并行接口指采用并行传输方式来传输数据的接口标准,是计算机中 最基本的数据传送接口。
一个并行接口的接口特性可以从两个方面加以描述:1)以并行方 式传输的数据通道的宽度,也称接口传输的位数;2)用于协调并行 数据传输的接口控制线,也称握手信号。
7.1.1 并行数据传送
所谓并行数据传送,是将多位数据通过多条传输线路同时传送,
端口A方式1输入时,PC5~PC3作为控制联络信号;当端口B方式1 输入时, PC2~PC0作为控制联络信号。PC6 、PC7未用,可定义为输 入或者输出。各联络信号的定义如图7-7所示,作用如下:
STB:输入选通,输入,低电平有效,由外设送来,将数据送入输入 锁存器。
《微机原理及应用》第七章并行接口
在外部设备中的应用
打印机
并行接口是打印机连接的主要方式之 一,可以实现高速数据传输和实时打 印。
扫描仪
通过并行接口连接扫描仪,可以将纸 质文档转化为数字格式,便于存储和 传输。
在通信系统中的应用
并行通信
在通信系统中,并行接口可以实现多路数据同时传输,提高 通信效率。
数据采集
在工业控制和数据采集系统中,并行接口可以用于连接多个 传感器和执行器,实现高速数据传输和控制。
地址映射
并行接口可以实现地址映射功能, 将外设的地址映射到主机的地址 空间中,方便主机对外部设备的
访问和控制。
03Biblioteka 并行接口的工作原理数据传输方式
01
02
03
并行数据传输
指在同一时刻,多个数据 位同时在传输线上进行传 输。
串行数据传输
指数据一位一位地顺序进 行传输。
独立数据传输
指每个数据位独立地进行 传输。
发展中的并行接口
随着计算机技术的进步,并行接口逐渐支持更高速的数据传输,但 仍受限于电缆长度和连接设备数量。
现代并行接口
随着USB、IEEE 1394等新型接口标准的出现,并行接口逐渐被取 代,但仍有一些特定应用场景中仍在使用。
当前并行接口的挑战与机遇
挑战
并行接口的数据传输速度受限于电缆长度和连接设备数量,且需要多根电缆进 行连接,增加了布线难度和成本。
数据传输协议
同步协议
发送端和接收端使用相同 的时钟信号来同步数据传 输。
异步协议
发送端和接收端使用各自 的时钟信号,通过其他方 式实现数据同步。
半同步协议
介于同步和异步之间,使 用部分时钟信号实现数据 同步。
数据传输控制方式
第七章通信接口技术
位0 abcdefgh
位1
D0
…
同 D1
相 D2
驱 D3
动 D4
器 D5
D6
D7
位2 共阴 …
静态显示接口
a
ha
ha
h
3#
2#
1#
MC14495
MC14495
MC14495
8255A
PA0 PA1 PA2 PA3 PB0 PB1 PB2
MC14495具有译码(BCD—显示码)、 锁存、驱动、限流作用。
CS A1 A0 RD WR
功能
00 00 1 00 10 1
对端口 A 读
对端口 B 读
输
01 00 1
对端口 C 读
0 1 1 0 1 非法,不能对控制口读 入
00 01 0 00 11 0
对端口 A 写
对端口 B 写
输
01 01 0 01 11 0
对端口 C 写
对控制口写
出
1 × ×× × ×× ×1 1
打印机工作过程为: 当主机要往打印机输出字符时,①先查询打
印机BUSY信号,当BUSY=0时可传送字符, ②然 后将要打印字符的ASII码(从A口)传送至打印 机, ③同时发出选通信号(STB)将字符选通到 打印机输入缓冲器。
设8255的端口地址为:3B0H 3B2H 3B4H 3B6H
PA PC6 PC2
数据缓冲器为三态
断 开
二、CPU与8255A的接口
8086最小模式
D0~D7
RD WR A2
A1
RESET
A9 A8 A7 A6 A0 M/IO A5 A4 A3
& G
G2A Y6
第7章+并行接口+(3)
Vcc GND
4 3 2 1 40 39 38 37 18 8255A 19 9 20 8 21 6 22 5 23 36 24 35 25 14 15 16 17 13 26 12 7 11 10
PA0 PA1 PA2 PA3 PA4 PA5 PA6 PA7 PB0 PB1 PB2 PB3 PB4 PB5 PB6 PB7 PC0 PC1 PC2 PC3 PC4 PC5 PC6 PC7
握手联络信号按照使用的线数分类可分为零线zerowire信号交换单线onewire信号交换双线twowire信号交换和多线信号交712712接口中断型接口非中断型接口可编程的中断型接口不可编程的中断型接口可编程的非中断型接口不可编程的非中断型接口cpuio接口外设端口地址数据控制或状态信号数据状态控制1电平状态量输入输入设备的状态信息是一个电平状态量如开关状态
图7-9 读清标志时序
5 中断式输入
图7-10 中断方式输入电路
简单并行接口芯片8212
1、主要技术性能 采用肖特工艺的TTL,24个引脚的双列直插式封装。 8位并行简单输入或输出单向端口。 带有三态输出以及控制选择逻辑。 具有中断请求能力。 采用单一的+5V电源。 2、8212的工作模式 8212的工作模式由其控制信号决定 8212有3种工作模式:输入、输出和选通输入
输入 输出 输入
输入 输出 输出
输出 输入 输入
输出 输入 输出
数据总线 D7~D0 CS
PA7~PA0 PB7~PB0
8 位开关 8 位 LED 指示灯
8255A
RESET 接系统 RESET 信号线 PC0 PC4 按钮 蜂鸣片
系统连接图
2. 方式1——选通的输入输出方式
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第九章并行通信接口与8255A【回顾】微机系统结构及控制信号的名称和作用。
【本讲重点】I/O接口概述,CPU与I/O接口,I/O接口与系统的连接。
8255A芯片的使用。
9.1 CPU与外设之间的数据传输一.CPU与I/O接口接口电路按功能可分为两类:①使微处理器正常工作所需要的辅助电路:时钟信号或中断请求等;②输入/输出接口电路:CPU与外部设备信息的传送(接收、发送)。
最常用的外部设备:如键盘、显示装置、打印机、磁盘机等都是通过输入/输出接口和总线相连的,完成检测和控制的仪表装置也属于外部设备之列,也是通过接口电路和主机相连。
1.为什么要用接口电路:需要分析一下外部设备的输入/输出操作和存储器读/写操作的不同之处:存储器都是用来保存信息的,功能单一,传送方式单一(一次必定是传送1个字节或者1个字),品种很有限(只有只读类型和可读/可写类型),存取速度基本上和CPU的工作速度匹配.。
外部设备的功能多种多样的(输入设备,输出设备,输入设备/输出设备),信息多样(数字式的,模拟式的),信息传输的方式(并行的,串行的),外设的工作速度通常比CPU的速度低得多,而且各种外设的工作速度互不相同,这也要求通过接口电路对输入/输出过程起一个缓冲和联络的作用。
注:接口电路完成相应的信号转换、速度匹配、数据缓冲等功能2.接口的功能(8种):⑴寻址能力:对送来的片选信号进行识别。
⑵输入/输出功能:根据读/写信号决定当前进行的是输入操作还是输出操作。
⑶数据转换功能:并行数据向串行数据的转换或串行数据向并行数据的转换。
⑷联络功能:就绪信号,忙信号等。
⑸中断管理:发出中斯请求信号、接收中断响应信号、发送中断类型码的功能。
并具有优先级管理功能。
⑹复位:接收复位信号,从而使接口本身以及所连的外设进行重新启动。
⑺可编程:用软件来决定其工作方式,用软件来设置有关的控制信号。
⑻错误检测:一类是传输错误。
另—类是覆盖错误。
注:一些接口还可根据具体情况设置其它的检测信息。
二.I/O接口与系统的连接1.CPU与I/O设备之间的信号(三类)(1) 数据信息包括三种形式:数字量、模拟量、开关量(2)状态信息是外设通过接口往CPU传送的如:“准备好”(READY)信号、“忙”(BUSY)信号(3)控制信息是CPU通过接口传送给外设的如:外设的启动信号、停止信号就是常见的控制信息2.接口部件的I/O端口:⑴数据端口、⑵控制端口、⑶状态端口CPU和外设进行数据传输时,各类信息在接口中进入不同的寄存器,一般称这些寄存器为I/O端口,每个端口有一个端口地址。
用于对来自CPU和内存的数据或者送往CPU 和内存的数据起缓冲作用的,这些端口叫数据端口。
用来存放外部设备或者接口部件本身的状态,称为状态端口。
用来存放CPU发出的命令,以便控制接口和设备的动作,这类端口叫控制端口。
如下图注:⑴输入还是输出,所用到的地址总是对端口而言的,不是对接口部件而言的。
⑵为了节省地址空间,将数据输入端口和数据输出端口对应同一个端口地址。
同样,状态端口和控制端口也常用同一个端口地址。
⑶CPU对外设的输入/输出操作就归结为对接口芯片各端口的读/写操作。
3.接口与系统的连接.接口电路位于CPU与外设之间,从结构上看,可以把一个接口分为两个部分,⑴用来和I/O设备相连;⑵用来和系统总线相连,这部分接口电路结构类似,连在同一总线上。
下图是一个典型的I/O接口和外部电路的连接图:联络信号:读/写信号,以便决定数据传输方向。
地址译码器,片选信号:地址译码器除了接收地址信号外,还用来区分I/0地址空间和内存地址空间的信号(M/IO)用于译码过程。
注:⑴一个接口通常有若干个寄存器可读/写,⑵一般用1-2位低位地址结合读/写信号来实现对接口内部寄存器的寻址。
4.输入输出的寻址方式CPU对外设的寻址方式通常有两种:(1) 存储器对应输入输出方式每一个外设端口占有存储器的一个地址。
优点:CPU对外设的操作可使用全部的存储器操作指令,寻址方式多,使用方便灵活,且可寻址的外设数量多。
缺点:由于外设占用了存储单元的地址,使内存的容量减小,同时,程序的可读性下降。
(2) 端口寻址的输入输出方式CPU有专门的输入输出指令(IN,OUT),通过这些指令中的地址来区分不同的外设。
优点:容易掌握,编出的程序可读性好。
缺点:可寻址的范围较小,还必须有相应的控制线(M/IO)来区分是寻址内存还是外设。
9.2 可编程并行接口芯片8255A一.并行通信与接口并行通信就是把一个字符的各位同时用几根线进行传输。
传输速度快,信息率高。
电缆要多,随着传输距离的增加,电缆的开销会成为突出的问题,所以,并行通信用在传输速率要求较高,而传输距离较短的场合。
Intel 8255A是一个通用的可编程的并行接口芯片,它有三个并行I/O口,又可通过编程设置多种工作方式,价格低廉,使用方便,可以直接与Intel系列的芯片连接使用,在中小系统中有着广泛的应用。
二.8255A的编程结构9-18255A由以下几部分组成:见图1.三个数据端口A,B,C这三个端口均可看作是I/O口,但它们的结构和功能也稍有不同。
·A口:是一个独立的8位I/O口,它的内部有对数据输入/输出的锁存功能。
·B口:也是一个独立的8位I/O口,仅对输出数据的锁存功能。
·C口:可以看作是一个独立的8位I/O口;也可以看作是两个独立的4位I/O口。
也是仅对输出数据进行锁存。
2.A组和B组的控制电路这是两组根据CPU命令控制8255A工作方式的电路,这些控制电路内部设有控制寄存器,可以根据CPU送来的编程命令来控制8255A的工作方式,也可以根据编程命令来对C 口的指定位进行置/复位的操作。
A组控制电路用来控制A口及C口的高4位;B组控制电路用来控制B口及C口的低4位。
3.数据总线缓冲器8位的双向的三态缓冲器。
作为8255A与系统总线连接的界面,输入/输出的数据,CPU 的编程命令以及外设通过8255A传送的工作状态等信息,都是通过它来传输的。
4.读/写控制逻辑读/写控制逻辑电路负责管理8255A的数据传输过程。
它接收片选信号CS及系统读信号RD、写信号WR、复位信号RESET,还有来自系统地址总线的口地址选择信号A0和A1。
三.8255A的引脚功能8255A的引脚信号可以分为两组:一组是面向CPU的信号,一组是面向外设的信号。
1.面向CPU的引脚信号及功能·D0-D7:8位,双向,三态数据线,用来与系统数据总线相连;·RESET:复位信号,高电平有效,输入,用来清除8255A的内部寄存器,并置A口,B口,C口均为输入方式;·CS:片选,输入,用来决定芯片是否被选中;·RD:读信号,输入,控制8255A将数据或状态信息送给CPU;·WR:写信号,输入,控制CPU将数据或控制信息送到8255A;·A1,A O:内部口地址的选择,输入。
这两个引脚上的信号组合决定对8255A内部的哪一个口或寄存器进行操作。
8255A内部共有4个端口:A口,B口,C口和控制口,两个引脚的信号组合选中端口见下表。
CS,RD,WR,A1,A0这几个信号的组合决定了8255A的所有具体操作,表7-1 8255A的操作功能表2.面向外设的引脚信号及功能• PA0~PA7:A组数据信号,用来连接外设;• PB0~PB7:B组数据信号,用来连接外设;• PC0~PC7:C组数据信号,用来连接外设或者作为控制信号。
四.8255A的工作方式8255A有三种工作方式,用户可以通过编程来设置。
方式0 简单输入/输出――查询方式;A,B,C三个端口均可。
方式1 选通输入/输出――中断方式;A ,B,两个端口均可。
方式2 双向输入/输出――中断方式。
只有A端口才有。
工作方式的选择可通过向控制端口写入控制字来实现。
在不同的工作方式下,8255A三个输入/输出端口的排列示意图如上图所示。
1.方式0方式0是一种简单的输入/输出方式,没有规定固定的应答联络信号,可用A,B,C三个口的任一位充当查询信号,其余I/O口仍可作为独立的端口和外设相连。
方式0的应用场合有两种:一种是同步传送;一种是查询传送。
2.方式1方式1是一种选通I/O方式,A口和B口仍作为两个独立的8位I/O数据通道,可单独连接外设,通过编程分别设置它们为输入或输出。
而C口则要有6位(分成两个3位)分别作为A口和B口的应答联络线,其余2位仍可工作在方式0,可通过编程设置为输入或输出。
(1) 方式1的输入组态和应答信号的功能图9-2给出了8255A的A口和B口方式1的输入组态。
图9-2 方式1输入组态C口的PC3-PC5用作A口的应答联络线,PC0-PC2则作用B口的应答联络线,余下的PC6~PC7则可作为方式0使用。
应答联络线的功能如下:·STB:选通输入。
用来将外设输入的数据打入8255A的输入缓冲器。
·IBF:输入缓冲器满。
作为STB的回答信号,。
·INTR:中断请求信号。
INTR置位的条件是STB为高且IBF为高且INTE为高。
·INTE:中断允许。
对A口来讲,是由PC4置位来实现,对B口来讲,则是由PC0置位来实现。
事先将其置位。
A口B口STB:PC4 PC2IBF:PC5 PC1INTR:PC3 PC0INTE:PC4置1 PC2置1(2) 方式1的输出组态和应答信号功能图9-3 方式1的输出组态C口的PC3、PC6、PC7用作A口的应答联络线,PC0-PC2则作用B口的应答联络线,余下的PC4~PC5则可作为方式0使用。
应答联络线的功能如下:·OBF:输出缓冲器满。
当CPU已将要输出的数据送入8255A时有效,用来通知外设可以从8255A取数。
·ACK:响应信号。
作为对OBF的响应信号,表示外设已将数据从8255A的输出缓冲器中取走。
·INTR:中断请求信号。
INTR置位的条件是ACK为高且OBF为高且INTE为高。
·INTE:中断允许。
对A口来讲,由PC6的置位来实现,对B口仍是由PC2的置位来实现。
A口B口OBF:PC6 PC2ACK:PC7 PC1INTR:PC3 PC0INTE:PC6置1 PC2置13.方式2方式2为双向选通I/O方式,只有A口才有此方式。
这时,C口有5根线用作A 口的应答联络信号,其余3根线可用作方式0,也可用作B口方式1的应答联络线。
方式2:就是方式1的输入与输出方式的组合,各应答信号的功能也相同。
而C口余下的PC0~PC2正好可以充当B 口方式1的应答线,若B口不用或工作于方式0,则这三条线也可工作于方式0。