当前位置:文档之家› 串行接口芯片8251A

串行接口芯片8251A

第11章 可编程串行接口芯片8251A
教学重点
串行通信基本概念
8251的内部结构和编程 异步通信程序 异步通信协议和RS232C接口
11-1 基本概念
11-1-1 串行通信的基本概念 1、串行通信
将数据分解成二进制位用一条信号线,一位一位顺序传 送的方式 串行通信有以下的特点: 用于通信的线路少,因而在远距离通信时可以极大地降 低成本 串行通信适合于远距离数据传送,也常用于速度要求不 高的近距离数据传送 PC系列机上有两个串行异步通信接口、键盘、鼠标器与 主机间采用串行数据传送
(5)8251A能与MODEM直接相连,接收和发送的数据均可存放在各 自的缓冲器中,以便实现全双工通信。
11-2-2 8251A的状 令基态 缓本缓 冲结冲 器器构、接收数据缓冲器、数据/命
1. 8251A的内部结构
数据总
DB
线缓冲

发送
缓冲器
TxD
RESET CLK RD WR C/D
CS
DSR DTR CTS RTS
(4)读/写控制逻辑信号
CS:片选信号,低电平有效。由CPU的IO/及地址信号经译码后供给。 C/D:控制/数据端。为高电平时CPU从数据总线读入的是状态信息;为低 电平时CPU读入的是数据。同样,C/D端为高电平时CPU写入的是命令; C/D为低电平时CPU输出数据。C/D与CPU的一条地址线相连。 RESET:芯片复位信号。为高电平时8251A各寄存器处于复位状态。收、 发线路上均处于空闲状态。通常该信号与系统的复位线相连。 RD:CPU读8251A的控制信号,低有效,与CPU的RD端相连。
率 ÷
检验、停止位,按约定 的波特率从TxD输出。
TXD
SOUT 当数据全部输出结束, 在TXD发出连续低电平
起始位
(TxE=1)。
2. 8251A的引脚功能
8251A的引脚排列如下图所示
D2 D3 RXD GN D D4 D5 D6 D7 TXC WR
CS C/D RD
RXRDY
1
28
2
27
3
26
4
25
5
24
6
23
7 8251A 22
8
21
9
20
10
19
11
18
12
17
13
16
14
15
D1 D0 VCC RXC
DTR RTS DSR RESET CLK TXD TXEMPTY CTS SYNDET TXRDY
3、引脚功能
(1)与接收有关的信号
RxD(Receiver Data)接收数据:从RxD端 串行输入数据输入
WR:CPU向8251A写数据的控制信号,低有效,与CPU的WR端相连。
8251A读/写功能表
CS RD WR D
操作
0 0 1 0 CPU 读 8251 数据
0 1 0 0 CPU 向 8251 写数据
0 0 1 1 CPU 读 8251 状态字
0 1 0 1 CPU 向 8251 写控制字
01 1 *
数据总线浮空
1* * *
数据总线浮空
(5)与调制解调器有关的引脚: 在远程通信时,可用8251与调制解调器相连,经电话线传输数据
DTR(Data Terminal Read y)数据终端准备好(通知数据装置)
DSR(Data Set Ready)数据装置准备好(回应DTR信号)
AB DB CB
11-2-1 8251A的基本性能
(1)通信初始化程序可以工作在同步通信或异步通信方式。同步方式 下,波特率为0~64Kbps;异步方式下,波特率为0~19.2Kbps。
(2)同步方式时,可设定为内同步或外同步两种做法,同步字符允许 采用单同步字符和双同步字符,由用户选定。数据位可在5~8位之间进 行选择。
~~ ~~
同步字符 数据 数据
数据 校验字符
(2) 异步通信
串行通信时的数据、控制和状态信息都使 用同一根信号线传送
收发双方必须遵守共同的通信协议(通信 规程),才能解决传送速率、信息格式、 位同步、字符同步、数据校验等问题
串行异步通信以字符为单位进行传输,其 通信协议是起止式异步通信协议
起止式异步通信协议
检测 RxD
÷
内部


CLK




奇偶检验结果
接收移位寄存器 接收缓冲寄存器
DB
(3)发送器
DB
数据发送缓冲器
工作过程
CPU执行输出指令, 并行数据→发送缓冲器。
异 或 门
停止位 1 奇偶位
0 发送移位寄存器
发送缓冲器→发送移位寄
存器,向CPU提出中断
内部
申请(TxRDY=1)。
CLK 波

内部产生起始、奇偶
起始位
字符 数据位
1 0 0/1 0/1 …
校验位停止位 空闲位 0/1 0/1 1 1 1
低位
高位
起 起数 由校 选停位空表始始5据择验采止~示闲位位位奇位用8位没位采—个—检—逻—有—用—二—验—辑—进—逻每进数、用1表行传辑电制个偶据于传示送0平位字校电位校送该字,组符验平紧验符字可成开或跟是之符选,不始着否间传择低传传起传的送1位送送、始送逻结先校的1位正辑.束传5验标传或1确送。位电志2送;停位平,。可止,
过去,串行异步通信的数据传输速率限制在50 bps到9600 bps之间。现在,可以达到115200 bps 或更高
4. 发送/接收时钟
在异步串行通信中,发送端需要用一定频率的时钟 来决定发送每l位数据所占的时间长度(称为位宽 度),接收端也要用一定频率的时钟来测定每一位 输入数据的位宽度。
在进行串行通信时,根据传送的波特率来确定发送 时钟和接收时钟的频率。在异步传送中每发送一位 数据的时间长度由发送时钟决定,每接收一位数据 的时间长度由接收时钟决定,它们和波特率之间有 如下关系:时钟频率=n×波特率
0 无奇偶校验位 01 奇校验 11 偶校验
同步方式 SCS ESD EP PEN L2 L1 0 0
与异步方式相同 1 SYND为输入(外同步) 0 SYND为输出(内同步)
1 单字符同步 0 双字符同步
2.命令控制字
命令控制字用于控制8251A的工作,使8251A处于规定的状态以准 备发送或接收数据,应在写入方式控制字后写入,
(2)接收器
作用:接收器接收在RxD上的串行数据并按规定的 格式转换为并行数据,存放在接收数据缓冲器中。
工作过程:(异步方式)当8251允许接收并准备好接收数据时,监测RxD 端,当检测到起始位(低电平)后,使用16倍率的内部CLK,连续检测8 个0确认。然后按波特率移位、检测RXD,直至停止位。内部删除起始、 奇偶、停止位接收缓冲寄存器后停,止使位R1xR奇D偶Y为位高,向CPU提出中断申请。
外同步方式: 当SYNDET引脚有一个正跳变脉冲,8251在 下一个接收时钟的上升沿开始接收字符,一旦达到同步, SYNDET引脚的高电平即可撤除。
异步方式(断点检测):当8251从RxD端连续收到两个 由全“0”组成的字符时,该引脚输出为高电平,表示当前线 路上无数据可读,只有当RxD端收到1个“1”信号或8251复 位时, BRKDET变为低电平。
以发送数据,发送
结束CTS=“1”。
11-2-3 8251A的编程控制
8251A是可编程串行接口,在使用之前必须 由程序对其工作状态进行设定(称为初始 化),其中包括同步方式还是异步方式、传 输波特率、字符代码位数、校验方式、停止 位位数等。8251A内部既有数据寄存器,还有 控制字寄存器和状态寄存器。控制字寄存器 用于8251A的方式控制和命令控制,状态寄存 器则存放8251A的状态信息。
RxC( Receiver Clock)接收时钟
(2)与发送有关的信号
TxD(Transmitter Data)发送数据:将CPU送入的并行数据转 换成串行格式后,从TxD端输出
TxRDY( Transmitter Ready)发送数据准备好: TxRDY=1表 示发送数据缓冲器已准备好从CPU接收一个字符数据,CPU可 采用中断或查询方式输出一个数据( RxRDY=0)。 TxE( Transmitter Empty)发送器空: TxE=1表示发送移位寄 存器中已无数据可以向外部发送。此时,由TxD输出空闲位 (同步字符)。当8251从CPU接收到一个数据后,TxE=“0”。
TxC( Transmitter Clock)发送时钟
(3)数据线、时钟信号线
DB7~DB0:三态双向数据总线,可连到CPU数据总线。CPU与 8251A之间的命令信息、数据以及状态信息都是通过这组数据 总线传送的。
CLK:输入产生8251A的内部时序。CLK的频率在同步方式工 作时必须大于接收器和发送器输入时钟频率的30倍;在异步 方式工作时必须大于输入时钟的4.5倍。另外,规定CLK的周 期要在0.42~1.35μs的范围内。
(3)异步方式时,数据位仍可在5~8位范围内选用,用1位作为奇偶校 验位或不设置奇偶位。此外,8251A在异步方式下能自动为每个数据增 加1位启动位及1位、1.5位或2位停止位(由初始化程序选择)。
(4)8251A具有奇偶校验、帧校验和溢出校验三种字符数据的校验方 式,校验位的插入、检查和出错标志的建立均由芯片自动完成。
读/ 写 逻辑
调制解 调控制 电路
发送 控制 电路
TxRDY TxE TxC
接收
缓冲器
RxD
接收 控制 电路
RxRDY RxC SYNDET
(1)数据总线缓冲器
数据总线缓冲器是CPU与8251A之间的数据 接口,它包含3个8位缓冲寄存器,其中两个 寄存器分别用来存放CPU从8251A读取的状 态 信 息 或 数 据 , 一 个 寄 存 器 存 放 CPU 向 8251A写入的控制字或数据。数据总线缓冲 器将8251A的8条数据线D7~D0和CPU的系 统数据总线相连。
相关主题