第11章 可编程串行接口芯片8251A

合集下载

可编程串行通信接口芯片8251A

可编程串行通信接口芯片8251A

可编程串行通信接口芯片8251A可编程串行通信接口芯片8251A2010-05-25 15:058251 A是一个通用串行输入/输出接口,可用来将86系列CPU以同步或异步方式与外部设备进行串行通信。

它能将主机以并行方式输入的8位数据变换成逐位输出的串行信号;也能将串行输入数据变换成并行数据传送给处理机。

由于由接口芯片硬件完成串行通信的基本过程,从而大大减轻了CPU的负担,被广泛应用于长距离通信系统及计算机网络。

8251A是一个功能很强的全双工可编程串行通信接口,具有独立的双缓冲结构的接收和发送器,通过编程可以选择同步方式或者异步方式。

在同步方式下,既可以设定为内同步方式也可以设定为外同步方式,并可以在内同步方式时自动插入一个到两个同步字符。

传送字符的数据位可以定义为5~8位,波特率0~64K可选择。

在异步方式下,可以自动产生起始和停止位,并可以编程选择传送字符为5~8位之间的数据位以及1、1/2位之中的停止位,波特率0~19.2K可选择。

同步和异步方式都具有对奇偶错、覆盖错以及帧错误的检测能力。

一、8251A内部结构及功能图8.5.1为8251A结构框图。

作为常用的通信接口,和8255A类似,8251A 的结构也可以归纳为以下三个部分:第一部分是和CPU或者总线的接口部分,其中包括数据总线缓冲器、读/写控制逻辑。

数据总线缓冲器用来把8251A和系统数据总线相连,在CPU执行输入/输出指令期间,由数据总线缓冲器发送和接收数据,此外,控制字,命令字和状态信息也通过数据总线缓冲器传输,读/写控制逻辑电路用来配合数据总线缓冲器工作。

CPU通过数据总线缓冲器和读写控制逻辑向8251A写入工作方式和控制命令字,对芯片初始化;向8251A写入要发送字符的数据代码,送到发送缓冲器进行并行到串行的转换,并且将接收的、已转换成并行代码的接收缓冲器中的字符数据读入CPU。

第二部分是数据格式转换部分,包括发送缓冲器、并行数据到串行数据转换的发送移位器,接收缓冲器和串行数据到并行数据转换的接收移位器,以及发送控制电路和接收控制电路。

可编程串行通信接口芯片8251A

可编程串行通信接口芯片8251A
能根据编程为每个字符设置1个、1.5个或2个停止位。 • (4)所有的输入输出电路都与TTL电平兼容。 • (5)全双工双缓冲的接收/发送器。
2
1.1 8251A内部逻辑与工作原理
• 8251A的结构框图如图1.1所示,可分五个主要部分:数据总线缓冲器、接收缓冲器、 发送缓冲器、读/写控制逻辑电路和调制解调控制电路。
• 2.命令控制字:设置为00110111B(即37H),置引脚、有效,出错标志复位,允许发送和接收 (虽然本例只是接收,但8251A作为串行通信接口,通常同时具有发送和接收功能,只是本例仅编 写输入部分程序而已),写入控制端口,端口地址为71H。
• 3.状态字:检测状态字D1位的RXRDY,若RXRDY=1,说明已接收一个完整字符,可以读取。读 取一个字符后,还要确定接收的字符是否正确,方法是检测状态字的D5D4D3位(帧错、溢出错、 奇偶错),相应位为1表明出现对应的错误,需要进行错误处理。
3
8251A的结构框图
4
(1)数据总线缓冲器
• 数据总线缓冲器是三态双向8位缓冲器,它是8251A与微机系统数据总线的接口,数 据、控制命令及状态信息均通过此缓冲器传送。它含有命令寄存器、状态寄存器、 方式寄存器、两个同步字符寄存器、数据输入缓冲器和数据输出缓冲器。
5
(2)发送缓冲器
• 发送缓冲器的功能是接收CPU送来的并行数据,按照规定的数据格式变成串行数据 流后,由TXD输出线送出。
15
• 1.方式选择控制字:根据题意,方式选择控制字为11111010B(即FAH),写入控 制端口,端口地址为201H。
• 2.命令控制字:设置为00110111B(即37H),允许发送和接收,写入控制端口, 端口地址为201H。

第11讲 微机接口技术(2)-串口8251A

第11讲 微机接口技术(2)-串口8251A
38
三 8251A的控制字 1. 方式寄存器
方式寄存器是8251A在初始化时,用来写入方式选择字用的。
方式选择有两种:同步方式和异步方式。方式寄存器有8位,最 低2位全为0时表示是同步方式,最低2位不全为0时表示是异步 方式。具体格式: 1) 8251A工作在同步方式下 当825lA工作在同步方式下时,方式寄存器的格式如下图所 示。
0/1
0/1
±Ö Ê Ó 8
ì â ¼ ² µ ½ Æ ð ¼ Î Ê » ¼ ² ì â ½ µ Ó Ð §Æ Ð ð Ê ¼ » Î
16
16
» ² Î É Ñ ù Ê ±Ö Ó
6
同步通信方式
以一个固定长度的字符组成的数据块(帧)为传输单位,每个数据块 附加1个或2个同步字符,最后以校验字符结束。 同步通信的数据传输效率和传输速率较高,但硬件电路比较复杂。 串行同步通信主要应用在网络当中。最常使用高级数据链路控制协议 HDLC。
8
面向字符的同步协议
典型代表为IBM的二进制同步通信协议
所有信息都是由字符组成,即只传送字符的 ASCII码。 为了区别数据信息和控制信息定义了10个特殊字 符为控制字符。这些字符在ASCII码中本来就是 控制字符(0列或1列)。 但如果数据信息的代码和控制字符相同,两者就 不能区分。为此引入“转义字符”DEL(编码为 00100000)。当数据代码和控制字符相同时, 前面加上转义字符DEL。
为串行码输出。
28
UART是用外部时钟来和接收的数据进行同步 的。外部时钟的周期Tc和每个数据位的周期Td有 以下关系: Tc=Td/K K=16或64(K为波特率因子) 外部时钟和接收数据的同步如图所示:
29
30
为了检测长距离传送中可能发生的错误,通常增加 一个奇偶校验位。 发送时,自动在奇偶校验位上添上“1”或“0”; 接收时,UART检查字符的每一位以及奇偶校验位的 “1”的个数,以确定是否发生传送错误。

第4讲可编程串行通信接口芯片8251A

第4讲可编程串行通信接口芯片8251A

第4讲 可编程串行通信接口芯片8251A
例2:编写通过8251A采用查询方式接收数据 的初始化程序
将8251定义为:异步传送方式,波特率系数为 64偶校验,1位停止位,7位数据位.设8251A数 据口地址为06A0H,控制口地址为06A2H.

第4讲 可编程串行通信接口芯片8251A
MOV DX,06A2H MOV AL,7BH ;写工作方式控制字 OUT DX,AL MOV AL,14H ;写操作命令控制字 OUT DX,AL WAIT: IN AL,DX ;读入状态控制字 AND AL,02H JZ WAIT ;检查RxRDY是否为1 MOV DX,06A0H IN AL,DX ;输入数据
5.全双工,双缓冲的发送器和接收器.
6.具有三种错误检测功能:奇/偶,溢出和帧错误.
第4讲 可编程串行通信接口芯片8251A
8251A的内部工作原理图:
第4讲 可编程串行通信接口芯片8251A
第4讲 可编程串行通信接口芯片8251A
8251A芯片的初始化
为使8251配合cpu进行通信,通信之前: 1.约定双方的通信方式〔同步/异步〕,数据格式
3.单片机:把cpu、内存储器、输入输出 接口集成在一个芯片上所构成的微型计 算机.
INC DI
IN AL,0F1H
TEST AL,38H
;检测错误标志
JNZ ERROR
;出错,至错误处理
LOOP WAIT
第4讲 可编程串行通信接口芯片8251A
相关术语
1.微型计算机:把cpu、内存储器、输入 输出接口电路集成在若干芯片上,加上 控制电极和电源等所组成的计算机.
2.单板机:把cpu、内存储器、输入输出 接口电路装在一块印制电路板上所构成 的微型计算机.

可编程串行接口芯片8251A

可编程串行接口芯片8251A
奇偶校验允许:1 允许;0 不允许
停止位位数
图9.13 方式指令字各位含义
校验类型:1 偶校验;0 奇校验 S2 S1 00 0 1 1b 1 0 1.5b 1 1 2b
Hale Waihona Puke 1.3 8251A的编程接口技术
B2、B1位表示收发时钟与波特率的关系。
如当B2、B1置为10时,假设收发时钟频率为 19.2KHz,则表示8251A为异步方式,且波特 率为1200。
1.3 8251A的编程
接口技术
对8251A的编程是指由CPU写入控制字(包 括方式指令字和命令指令字)和读/写收发数 据,实现对8251A的各种工作方式以及工作进 程的控制。
8251A的编程包括初始化编程和收发数据过程 的编程两部分。
1.方式指令字
8251A方式指令字各位的定义如图9.13所示。
L2、L1指定串行异步通信中每个字符数据的 位数,可以在5~8位之间选择。
PEN位用来选择是否需要奇偶校验位。
EP位用来选择奇校验或偶校验,若EP=1, 则进行偶校验;若EP=0,则进行奇校验。
1.3 8251A的编程
接口技术
S2、S1用来指定异步方式下的停止位的位数, 可以选择1、1.5或2位。 在 同 步 方 式 ( B2、B1=00), 则 S1=1 为 外 同步,
1.3 8251A的编程
接口技术
1.方式指令字
8251A方式指令字各位的定义如图9.13所示。
D7 D6 D5 D4 D3 D2 D1 D0 S2 S1 EP PEN L2 L1 B2 B1
波特率因子
字符长度
B2 B1 00同步 011 1 016 1 164
L2 L1 005b 016b 107b 1 18b

串行通讯接口8251A

串行通讯接口8251A
RECEIVER shi.REG
B U S
8286
(opotion)
D7-D0
SERIAL RxD INPUT
T
DATA-IN BUFFER
RESET RxRSY TxRDY RD WR
DATA-OUT BUFFER
TxE TxD SERIAL OUTPUT
TRANS. Shi REG
DSR DTR
3.
Intel 8251A可编程通信接口的结构与编程
• 8251A的编程 操作过程:8251A工作方式及运行由程序 控制。
复位操作
输出模式字 是
同步方式 ?
否 输出命令字 是 输出第一个同步字符 双同步 ? 是 输出第二个同步字符 否
复位 ? 传送数据 否 传递完 ? 是
异步传送模式字格式
RESET CLK C/D RD WR CS D A DSR DTR CTS RTS B U S MODEM CONTROL D A
REA D / WRITE
TRANSMIT CONTROL
TxRDY TxEMPT TxC
CONTROL LOGIC
RECEIVE BUFFER S P
RxD
RECEIVE BUFFER
8251A可编程通信接口
2. 串行通信的术语 • 全双工、半双工、单工 单工:通信一方为发送器,另一方为接收器, 一条传输线相连, 进行单向传输。 A B
发送器 接收器
单工
计算机主机与外设之间串行通信,多采用全 双工方式。
8251A可编程通信接口
2. 串行通信的术语 • 同步与异步通信方式 同步方式:通信双方用统一时钟控制通信过程, 信息传输组成数据包(数据帧)。每 帧头尾是控制代码,中间是数据块, 可有数百字节。不同的同步传输协 议有不同的数据帧格式。 数据帧 包头 数据块 包尾

芯片8251A介绍.ppt

芯片8251A介绍.ppt
8251A有两个控制字和一个状态字: 方式选择控制字:用于规定8251A的工作方式 ; 操作命令控制字:使8251A处于规定的工作状态,
以准备接收或发送数据 状态字:寄存8251A的工作状态
方式选择控制字格式
D7 D6 D5 D4 D3 D2 D1 D0
奇偶校验
X0:无校验 01:奇校验 11:偶校验
OUT DX,AL
INC DI
;修改指针
LOOP NEXT
HLT
设接收端8251A数据口地址为RDATA,控制口/状态口地址为 RCONT,接收数据缓冲区首地址为RBUFF
SRR: MOV DX,RCONT ;送方式选择控制字
MOV AL,7FH
OUT DX,AL
MOV AL,14H
;清除错误标志,允许接收
①通过编程,8251A可以工作在同步方式,波特率0~ 64K,也可以工作在异步方式,波特率0~19.2K; ②同步方式下可以用5~8位来表示字符,允许增加1 位奇偶校验位,能自动检测同步字符,实现收发同步;
③异步方式下用5~8位来表示字符,1位可选的奇偶校 验位,1位启动位,根据需要可设置1、1.5或2位停止位;
4. 信号的调制与解调
为在模拟信道上传输数字信号,必须把数字信号转换 成适于传输的模拟信号,而在接收端再将模拟信号转 换成数字信号。前一种转换称为调制,后一种转换称 为解调。完成调制、解调功能的设备叫做调制解调器 (Modem)。
三种主要的调制方式:
•幅移键控ASK •频移键控FSK •相移键控PSK


算 机





微机系统在串行通信时必须进行串行与并行的转换
2. 同步方式和异步方式 •异步串行方式

串行通信和可编程串行接口芯片8251A

串行通信和可编程串行接口芯片8251A
在8251a芯片与微处理器之间,数据线需要进行正确连接,确保数据传输的可靠 性和稳定性。
控制线的连接
控制线用于控制8251a芯片的工作方式和状态,如起始位、 停止位、波特率等。
控制线通常由微处理器通过编程设置,以实现串行通信的参 数配置和控制。
地址线的连接
地址线用于标识8251a芯片在系统中的地址,以便微处理 器能够正确寻址和访问。
02
movwf CR ; 将值写入CR寄存器
03 movlw 0x01 ; 设置IER寄存器,允许接收中断
初始化编程
movwf IER ; 将值写入IER寄存器
```ቤተ መጻሕፍቲ ባይዱ
数据发送编程
01 发送步骤
02
将数据写入发送缓冲寄存器(THR)。
03
通过设置控制寄存器(CR)的发送使能位启动发送过
程。
数据发送编程
编程控制
通过编程控制8251A的工作模式、 波特率、数据位、停止位等参数, 实现灵活的串行通信功能。
感谢您的观看
THANKS
05 串行通信协议及8251a的 应用
RS-232C协议
定义
RS-232C是一种标准的串行通信协议,用于 连接计算机和其他设备。
特点
采用单端信号传输方式,具有高电平、低电 平两种逻辑状态,传输距离较近。
应用
常用于连接计算机和调制解调器、打印机等 低速设备。
RS-485协议
定义
RS-485是一种改进的串行通信协议,克服了RS-232C传输距离较 近的限制。
• 数据发送代码示例
数据发送编程
01
```
02
movlw 0x12 ; 要发送的数据是0x12
03

十一章串行接口8251A

十一章串行接口8251A

2. 串行通信方式 在串行通信中,按照在同一时刻数据流的方 向可分为三种基本传送制式: 单工传送: 仅支持在一个方向上的数据传送。 全双工传送:可以同时进行发送和接收。 半双工传送:输入过程和输出过程使用同一个 通路,即不可同时进行发送和接收。
3. 传送速率
发送时钟 在采用异步方式进行通信时,发送端需要用时钟来决 定每一位对应的时间长度。 接收时钟 接收端需要一个时钟来测定每一位的时间长度。 波特率/ 波特率/位传输率 每秒传输的离散信号的数目/每秒传输的位数。 波特率因子 发送时钟和接收时钟的频率都可以是位传输率的16、 32、64倍,这个倍数就是波特率因子。源Fra bibliotek目 的
数据的各位同时由源到达目的地 → 快 多根数据线 → 短距离(远程费用高) 并行通信适于短距离、高速通信
在串行通信时,数据和联络信号使用同一条信号线来 传送,所以收发双方必须考虑解决如下问题: 波特率---双方约定以何种速率进行数据的发送和接收 帧格式---双方约定采用何种数据格式 帧同步---接收方如何得知一批数据的开始和结束 位同步---接收方如何从位流中正确地采样到位数据 数据校验---接收方如何判断收到数据的正确性 差错处理---收发出错时如何处理 收发双方必须遵守一些共同的通信协议才能解决上述 问题。
4. 读/写控制逻辑电路 写控制逻辑电路
读/写控制逻辑电路用来接收CPU送来的一系列控制信号, 对数据在内部总线上的传送方向进行控制,并配合数据总线 缓冲器工作。具体功能包括: 1)接收写信号WR,将来自数据总线的数据或控制字写入 8251A。 2)接收读信号RD,将数据或状态字从8251A送往系统数据 2 RD 8251A 总线。 3)接收控制/数据信号C/D,并与读/写信号组合起来,通知 8251A当前读/写的到底是数据还是控制字或状态字。 4)接收时钟信号CLK,完成8251A的内部定时。 5)接收复位信号RESET,使8251A处于复位状态。

串行通信接口8251A

串行通信接口8251A

2)8251A的发送和接收 (1)同步发送方式。
在同步发送方式下,要在程序中将控制寄存器的TxEN位置1,并在CTS 有效的情况下,才能开始发送过程。此时,发送器先根据编程要求发送1个 或2个同步字符,然后发送数据块。在发送数据块时,发送器会根据编程要 求对数据块中的每个数据加上奇/偶校验位,当然,如在8251A编程时不要 求加奇/偶校验位,那么,在发送时就不添加任何附加位。 (2)同步接收方式。
按照数据传输时发送过程和接收过程来划分,串行通信有全双 工方式、半双工方式和单双工方式。全双工方式下系统可同时进行 发送和接收;半双工方式中输入过程和输出过程使用同一通道,因 此两者不能同时进行;而单双工方式下系统只能在一个方向传输信 息。
2021年1月30日星期六
2)按时钟对通信过程的定时方式来划分 按时钟对通信过程的定时方式,串行通信可分为同步通信和
RS-422定义了一种平衡通信接口,从而改进了RS-232通信距离短、 速率低的缺点,将传输速率提高到10 Mb/s,并允许在一条平衡线上连接 最多10个接收器。RS-422是一种单机发送、多机接收的单向、平衡传输 规范,后来被命名为TIA/EIA-422标准。
RS-485是EIA为了扩展应用范围于1983年在RS-422的基础上制定的, 增加了多点、双向通信能力,即允许多个发送器连接到同一条总线上, 同时又增加了发送器的驱动能力和冲突保护特性,扩展了总线共模范围, 后被命名为TIA/EIA-485标准。
8251A和CPU之间的信号,一组是8251A和外设之间的信号,如图1-21 所示。
2021年1月30日星期六
图1-2 18251A与CPU及外设的连接关系
4.8251A的编程 1)8251A的初始化 8251A的初始化流程图如图1-22 所示。

串行通信和可编程接口芯片8251A

串行通信和可编程接口芯片8251A

ABCD
发送数据
通过将数据写入到8251A的数据寄存器中,然 后启动发送过程。
错误检测与处理
在数据传输过程中,应进行错误检测,如奇偶校 验、帧错误等,并采取相应的处理措施。
使用8251A芯片进行数据传输的示例
设置参数
首先,配置8251A的寄存器以设置数据传输 参数,如数据格式、波特率等。
发送数据
将要发送的数据写入到8251A的数据寄存器 中,然后启动发送过程。
03 8251A芯片与串行通信的 结合
8251A芯片在串行通信中的作用
数据传输
8251A芯片作为串行通信接口, 能够实现数据在串行通道上的传 输,包括发送和接收。
协议转换
8251A芯片可以将并行数据转换 为串行数据,或者将串行数据转 换为并行数据,实现不同协议之 间的转换。
信号调制与解调
8251A芯片可以对信号进行调制 和解调,以适应不同的传输介质 和距离要求。
工业控制
02
03
智能仪表
在工业控制系统中,传感器和执 行器之间的通信通常使用串行通 信。
பைடு நூலகம்
智能仪表之间的通信通常使用串 行通信,例如通过RS-485总线进 行数据传输。
02 8251A芯片介绍
8251A芯片的特点
高度集成
01
8251A是一款高度集成的串行通信芯片,内部包含波特率生成
器、数据接收器和发送器等模块。
异常处理
在协议转换过程中,应处理可能出现的异常情况,如协议不匹配、 数据格式错误等。
05 8251A芯片的常见问题与 解决方案
8251A芯片无法正常工作的问题及解决方案
总结词
无法正常工作
详细描述
8251A芯片无法正常工作可能是由于电源问题、接口连接不良、芯 片损坏等原因。

8251芯片

8251芯片

接收端初始化程序和接收控制程序
2、发送器DB 数据发送来自冲器工作过程 CPU执行输出指令, 并行数据→发送缓冲器。
发送缓冲器→发送移位寄 存器,向CPU提出中断
异 或 门 0
内部 CLK ÷
申请(TxRDY=1)。
波 特 率
TXD SOUT
内部产生起始、奇偶 检验、停止位,按约定 的波特率从TxD输出。 当数据全部输出结束, 在TXD发出连续低电平 (TxE=1)。
2.两台微型计算机通过8251A相 互通信的举例
分析:初始化程序由两部分组成: ⑴是将一方定义为发送器。发送 端CPU每查询到TXRDY有效,则 向8251A并行输出一个字节数据; ⑵是将对方定义为接收器。接收 端CPU每查询到RXRDY有效,则 从8251A输入一个字节数据,一直 进行到全部数据传送完毕为止。
M O D E M 波特率 发生器
电 话 线 接 口
RTS(Request to Send)数据终端向 MODEM发出请求表 示数据已准备好需 要发送
8251A
RxC TxC 数据终端设备DTE
电 CTS(Clear to Send) 话 MODEM回应终端, 线 若TxEN有效8251可
以发送数据,发送 结束CTS=“1”。
输出第一个同步字符 双同步 输出第二个同步字符
N
输出命令字 复位 传送数据
Y
N
输入状态字
N
传送完
Y
1. 8251复位 电源上电,8251自动进入复位状态,为了确保在送方式字 和命令字之前8251正确复位,可向8251的控制口连续写 入3个“0”,然后再写入一个复位控制字(40H),用软 件使8251可靠复位。 注:对8251的控制口进行一次写入操作,需有写恢复时间。 (写恢复时间一般为16个时钟周期) DELAY1: MOV CX,02H

计算机硬件技术基础 (ch11-2)

计算机硬件技术基础  (ch11-2)

11
TXE (Transmitter Empty):发送器空信号. 发送器空信号. 发送器空信号
发送器空信号, 发送器空信号,高电 平有效,表示 平有效,表示8251A 的一个发送动作已完 成.当8251A从CPU 从 得到一个字符后, 得到一个字符后, TXE便成为低电平. 便成为低电平. 便成为低电平
在串行通信中, 在串行通信中,无论收发都必须有时钟脉冲信号对传送的 数据进行定位和同步控制.接收时钟 发送时钟是波特率的倍 数据进行定位和同步控制.接收时钟/发送时钟是波特率的倍 波特率因子. 数——波特率因子. 波特率因子
18
8Tc
16Tc
若 K=16,在每一个时钟周期的上升沿采样接收数据线,若发现了第一 ,在每一个时钟周期的上升沿采样接收数据线, ),以后若又连续采样到 个"0"(因数据的起始位为"0"),以后若又连续采样到 8 个"0",则确 (因数据的起始位为" ), , 定其为起始位(而不是干扰信号),以后每隔16个周期采样一次数据线 ),以后每隔 个周期采样一次数据线, 定其为起始位(而不是干扰信号),以后每隔 个周期采样一次数据线, 作为输入数据. 作为输入数据.
25
2. 工作命令字
作用:确定8251A的实际操作,迫使 的实际操作, 作用:确定 的实际操作 迫使8251A进行 进行 某种操作或处于某工作状态, 某种操作或处于某工作状态,以便接收 或发送数据. 或发送数据.
3
11.2 可编程串行 接口8251A 可编程串行I/O接口 接口
一,8251A 内部结构
外部数据总线 状态 缓冲器 发送数据 / 命令 缓冲器 接收数据 缓冲器
RESET CLK C /D RD WR CS DTR DSR RTS CTS

串行接口芯片8251A课件

串行接口芯片8251A课件

THANKS
感谢观看
06
8251A芯片应用案例
应用场景一:串行通讯系统
总结词
8251A芯片在串行通讯系统中发挥着关键作用,能够实现数据的高速传输和可靠通讯。
详细描述
在串行通讯系统中,8251A芯片作为主控制器与多个从设备进行数据交换。通过设置不同的波特率和数据位,可 以灵活地适应不同的通讯协议和传输速率。同时,8251A芯片还支持奇偶校验和流控制功能,提高了数据传输的 可靠性和稳定性。
串行接口芯片8251a课件
contents
目录
• 8251A芯片概述 • 8251A芯片工作原理 • 8251A芯片编程与控制 • 8251A芯片接口技术 • 8251A芯片调试与测试 • 8251A芯片应用案例
01
8251A芯片概述
芯片简介
8251A是Intel公司生产的一款可编程的串行接口芯片,用于实现计算机与外部设备 之间的串行通讯。
编程实例与演示
01
02
03
04
设置波特率
演示如何设置8251A的波特 率,以便控制数据传输速率。
数据发送与接收
演示如何通过8251A发送和 接收数据。
中断处理
演示如何处理8251A产生中 断的情况。
多机通讯
演示如何使用8251A实现多 机通讯。
04
8251A芯片接口技术
接口类型与规范
接口类型
8251A芯片支持同步和异步串行通讯 接口,包括RS-232、RS-422和RS485等类型。
在工业自动化领域,8251A芯片可以 用于实现计算机与机器人、传感器等 设备之间的通讯和控制。
数据采集与控制系统
在数据采集与控制系统中,8251A芯 片可以用于实现计算机与各种外表和 控制设备之间的通讯。

第11章 可编程串行接口芯片8251A

第11章 可编程串行接口芯片8251A

发送允许 1:允许 0:禁止 数据终端准备好 1:迫使DTR输出0 接收允许 1:允许 0:禁止 发送断点字符 1:迫使TxD为0
图11-9 8251A命令控制字的格式
15
第11章
D7 D6 D5 D4 OE D3 PE D2 TxE D1 RxRDY D0 TxRDY 同引脚定义 奇偶错 溢出错 帧出错
2
第11章
(3)数据传送方式 串行通信通过一条信号线按顺序进
行传输,发送信息和接收信息分时使 用线路。 串行通信数据通常在两个站间进行 双向传送。 分为单工、半双工和全双工传送。
3
A
B 单工通信 接收器 (a)
单工传送: 一方发送,另 一方接收数据 半双工传送: 双方都能接收 或发送,但不 能同时接收和 发送 全双工传送: 有两条通路, 发送信息和接 收信息可同时 进行
28
1.RS-232C引脚
RS-232C接口有9针、25针等规格。
(a)25脚排列图 (b)9脚排列图 图11-14 RS-232C引脚排列
25引脚中,有4条数据线、11条控制线、3条定 时信号线、2条地信号线。另外还保留2个引脚, 有3个引脚未定义。
29
第11章
2.RS-232C的连接
RS-232C广泛用于数字终端设备,
调制解调器(Modem)是计算机在远程 通讯中采用的辅助外部设备。 发送端用调制器把数字信号转换为模拟信 号。 接收端用解调器检测从发送端送来的模拟 信号,再转换成数字信号。 调制解调器在发送端相当于D/A转换器, 在接收端相当于A/D转换器。
7
第11章
11.2 串行接口芯片8251A
9
11.2.2 8251A基本结构
D—D 7 0

第十一章可编程串行接口芯片8251

第十一章可编程串行接口芯片8251

黄河科技学院计算机科学与技术教研室
-12 V 1488 发送器 TXD
+12 V
RS -232C 连接器
TTL 电平 1489 接收器
3 接收数据 RS -232C 电平
通信接口 RXD
TTL 电平
RS -232C 电平 2
发送数据
27 k -12 V +5V
1 保护地 7 信号地
图11-6 RS–232C总线接收器与发送器的连接方法
当接收端检测到一个完整的同步字后,就连续接收数据。一 (c)
标志符 地址符 控制符 CRC 校验 CRC 校验 标志符 帧数据结束,便进行16位的循环冗余校验(Cyclic Redundancy 数据场 01111110 8 位 8 位 字符1 字符2 01111110
(d) Check)——CRC校验,以校验所传送的数据中是否出现错误。 数据场 CRC 校验字符1 CRC 校验字符2 图(b)为双同步数据格式,这时利用两个同步字进行同步。 (e)
2.串行数据传送方式
A 发送器 B 接收器
A 发送器 接收器 A 发送器 接收器
(a)
B 发送器 接收器
(b)
B 接收器 发送器
(c)
图 11-2串行通信中数据的传送模式 (a) 单工通信模式 (b) 半双工通信模式 (c) 全双工通信模式
黄河科技学院计算机科学与技术教研室
(1) 单工(Simplex)通信模式:该模式仅能进行一个 方向的数据传送,数据只能从发送器A发送到接收器B。
黄河科技学院计算机科学与技术教研室
异步传送数据格式下传送的过程:
每个字符传送前,其传输线上必须处于高电平“1”
状态,这样,当传输线由“1”变为“0”状态,并持续

串行通信和可编程接口芯片8251A

串行通信和可编程接口芯片8251A
TxC( Transmitter Clock)发送时钟
4、8251读写操作表
CS RD WR C/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 *
数据总线浮空
同步通信数据格式
SYN字符1 SYN字符2
数据
二、串行通信中的几个问题
1、数据传送方向
①单工
TXD 发送
RXD 接收
②半双工
单线通信 单向数据流
发 送
TXD / RXD
接 收
单线通信


分时双向数据流


(对讲机工作方式)
③全双工
发送
接收
TXD RXD
RXD TXD
接收
发送
双线通信
各线单向,双向 数据流(电话工作 方式)
TxRDY( Transmitter Ready)发送数据准备好: TxRDY=1表 示发送数据缓冲器已准备好从CPU接收一个字符数据,CPU可 采用中断或查询方式输出一个数据( RxRDY=0)。
TxE( Transmitter Empty)发送器空: TxE=1表示发送移位寄 存器中已无数据可以向外部发送。此时,由TxD输出空闲位 (同步字符)。当8251从CPU接收到一个数据后,TxE=“0。”
1 单字符同步 0 双字符同步
3. 命令字
EH IR RST ER SBRK RxE DTR TxEN
1 允许发送 0 禁止发送 使DTR引脚为低电平 1 允许接收 0 禁止接收 1 使TxD线变低,发送空白字符 0 正常工作

8251A可编程串行接口芯片

8251A可编程串行接口芯片

• CTS # :允许传送,是输入信号,低电平有效。 允许传送,是输入信号,低电平有效。 通常是MODEM对8251A的信号的响应,当 的信号的响应, 通常是 对 的信号的响应 CTS#有效且工作命令字中的 有效且 位为1时 有效 工作命令字中的TxE位为 时 位为 8251A方可发送数据。 方可发送数据。 方可发送数据 • 如果在发送器工作过程中,TxE位变为 或 如果在发送器工作过程中, 位变为0或 位变为 CTS #变为无效,则发送器关闭之前要将已经 变为无效, 变为无效 写入的所有数据发送出去后才关闭。 写入的所有数据发送出去后才关闭。如果在最 后一个字符出现在串行数据流之前出现这种状 则最后一个字符将在CTS #变为有效和 况,则最后一个字符将在 变为有效和 TxE变为 时再发送一次。 变为1时再发送一次 变为 时再发送一次。
• CLK:工作时钟,由外部时钟源提供。为芯片 :工作时钟, 外部时钟源提供。 提供 内部电路提供定时, 内部电路提供定时,并非发送或接收数据的时 在同步方式下, 的频率要大于接收器 钟。在同步方式下,CLK的频率要大于接收器 或发送器输入时钟(RxC或TxC)频率的 倍。 频率的30倍 或发送器输入时钟 或 频率的 在异步方式下, 在异步方式下,CLK的频率要大于接收器或发 的频率要大于接收器或发 送器输入时钟频率的4.5倍 另外, 送器输入时钟频率的 倍。另外,CLK的周 的周 期要在0.4µs到1.35µs范围内。 范围内。 期要在 到 范围内
• TxRDY(Transmitter Ready):发送器准备好,输出, :发送器准备好,输出, 高电平有效。当它有效时, 高电平有效。当它有效时,表示发送器已准备好接收 CPU送来的数据字符,通知 送来的数据字符, 可以向8251A发送数 送来的数据字符 通知CPU可以向 可以向 发送数 据。CPU向8251A写入了一个字符以后,TxRDY自 向 写入了一个字符以后, 自 写入了一个字符以后 动复位。在用查询方式时,此信号作为一个状态位, 动复位。在用查询方式时,此信号作为一个状态位, CPU可从状态寄存器的 位检测这个信号;在用中 可从状态寄存器的D0位检测这个信号 可从状态寄存器的 位检测这个信号; 断方式时,此信号作为中断请求信号。 断方式时,此信号作为中断请求信号。 • TxEMPTY(Transmitter Empty):发送器空,输出, :发送器空,输出, 高电平有效。当它有效时, 高电平有效。当它有效时,指示发送器中的数据已发 送出去,已经没有要发送的字符了。当8251A从CPU 送出去,已经没有要发送的字符了。 从 接收待发的字符后,自动复位。 接收待发的字符后,自动复位。TxEMPTY既然表示 既然表示 发送已经结束,这样在半双工方式中, 半双工方式中 发送已经结束,这样在半双工方式中,CPU就从它知 就从它知 道何时切换数据的传输方向,由发送转为接收。 道何时切换数据的传输方向,由发送转为接收。此信 号可从状态寄存器的D2位检测到 位检测到。 号可从状态寄存器的 位检测到。
相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
11.2 串行接口芯片8251A
11.2.1 8251A的基本性能 (1)工作在同步或异步通信方式下。 (2)同步方式时允许用单同步和双同步
字符。数据位在5~8位间进行选择。
8
第11章
(3)异步方式时数据位仍在5~8位范围内 选用,用1位作奇偶校验位或不设奇偶位。 能自动为每个数据增加1位启动位及1位、 1.5位或2位停止位。
(4)有奇偶校验、帧校验和溢出校验3种字 符数据校验方式。
(5)与MODEM直接相连,接收和发送数 据可存放在各自缓冲器中。
9
11.2.2 8251A基本结构
D— 7 D0
数据总线
发送 缓冲器
发送器
TxD
RESET CLK C/D
RD WR
CS
DSR DTR CTS RTS
读/写
。控制电路 。。
。 。 。 。调制解调器
18
程序段如下:
MOV DX,301H ;控制口地址
MOV AL,01111111B ;方式控制字7FH
OUT DX,AL
;写工作方式控制字
MOV AL,00010101B ;命令控制字15H
OUT DX,AL
;写操作命令控制字
LP:IN AL,DX
;读状态控制字
AND AL,02H ;检查RxRDY是否为1
特率 10: 异步*16
11: 异步*64
数 00: 5 据 01: 6 位 10: 7
数 11: 8
*0: 内同步 01: 双同步字 11: 单同步字
00: 无效 01: 1位停止位 10: 1位半 11: 2位
校 验 方 式
*0: 不校验 01: 奇校验 11: 偶校验
图11-8 8251A方式控制字的格式
POP DX
POP BX
POP AX
STI
IRET
26
第11章
11.3 串行通信接口标准RS-232C
RS-232C是EIA(电子工业协会)串口 标准(RS-推荐标准,232-标识号,C-修 改次数)。 串口常用是连接鼠标和调制解调器,称 异步通信适配器接口。
27
第11章
串口插座分9针或25针。串口赋予专 门设备名COM1和COM2。 RS-232C在远距离通信中连接数据 终端设备与数据通信设备。也可用于 两台计算机或设备间近距离串行连接。
JZ LP
; RxRDY≠1
接收未准备就绪,等待
MOV DX,300H
IN AL,DX
;否则输入数据
19
8251A与CPU及外设的连接:
D7~D0 A7 A6 A5 ห้องสมุดไป่ตู้4
8086 M/IO
A3 A2 A1
A0 RESET
RD WR
G1 Y0
G2A G2B C B A
D7~D0 RxD
CS
TxD
8251A
3
单工传送: 一方发送,另 一方接收数据
半双工传送: 双方都能接收 或发送,但不 能同时接收和 发送
全双工传送: 有两条通路, 发送信息和接 收信息可同时 进行
A 发 送器
单 工通 信
B 接 收器
A 发 送器 接 收器
(a) 半 双工 通 信
B 发 送器 接 收器
A 发 送器 接 收器
(b) 全 双工 通 信
;检查有无错误产生
JZ SAVAD MOV AL,'?'
;出错的数据用'?'代替
25
SAVAD:MOV DX,SEG BUFFER
MOV DS,DX
MOV BX,OFFSET BUFFER
MOV [BX],AL
;存储数据
MOV AL,20H
OUT 20H,AL ;将EOI命令发给8259
POP DS
21
发送数据程序段:
START:MOV DX,04A2H
LEA SI,TABLE
WAIT:IN AL,DX
TEST AL,04AH ;检查发送寄存器是否空
JZ WAIT
;若为空,则继续等待
PUSH DX
MOV DX,04A0H
LODSB
OUT DX,AL
;否则发送一个字节
POP DX
DEC BX
MOV DX,04A2H
B 接 收器 发 送器
(c)
图 11-1 数据传送方式 4
(4)数据传输率 每秒传输字符的位数。用波特率表示: ——110、300、600、1200、l800、
2400、4800、9600和19200波特。 若异步串行通信数据传送速率960字符/秒,
每个字符包括一个起始位、8个数据位和一个 停止位,波特率为:10×960=9600波特
11.2.4 8251A的 初始化和编程应用
输出方式指令
异步
Y
N 输出第一个同步字符
N
单同步字符?
Y
输出第二个同步字符?
输出命令指令
Y
有复位命令?
N 传输数据
完成?
N
Y
17
第11章
【例11.1】8251A控制口地址301H,数据 口地址300H,按要求对8251A初始化。 (1)异步工作方式,波特率系数64,偶校 验,总字符长度10(1位起始位,8位数据, 1位停止位); (2)允许接收和发送,使错误位全部复位; (3)查询8251A状态字,接收准备就绪时 从8251A输入数据,否则等待。
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
图11-6 8251A引脚排列图
11
第11章
11.2.3 8251A的编程控制
8251A使用前须用程序对其工作状态 进行设定:
14
D7 D6 D5 D4
D3
D2
D1
D0
EN IR RTS ER SBRK RxE DTR TxEN
进入搜索方式 1:进行SYNC搜索
内部复位 1:8251A复位
请求发送 1:迫使RTS输出0
出错复位 1:复位错误标志
发送允许 1:允许 0:禁止
数据终端准备好 1:迫使DTR输出0
接收允许 1:允许 0:禁止
6
第11章
11.1.2 信号的调制和解调
调制解调器(Modem)是计算机在远程 通讯中采用的辅助外部设备。 发送端用调制器把数字信号转换为模拟信 号。 接收端用解调器检测从发送端送来的模拟 信号,再转换成数字信号。 调制解调器在发送端相当于D/A转换器, 在接收端相当于A/D转换器。
7
第11章
28
1.RS-232C引脚
RS-232C接口有9针、25针等规格。
(a)25脚排列图
(b)9脚排列图
图11-14 RS-232C引脚排列
25引脚中,有4条数据线、11条控制线、3条定
时信号线、2条地信号线。另外还保留2个引脚,
有3个引脚未定义。
29
第11章
2.RS-232C的连接
RS-232C广泛用于数字终端设备, 如计算机与调制解调器之间的接口, 以实现通过电话线路进行远距离通信。
第11章
可编程串行接口芯片8251A
主要教学内容
串行通信概念和基本技术 8251A内部结构及功能 8251A初始化及应用 RS-232-C简介 本章小结,思考及练习题解析
1
第11章
11.1 串行传输基本概念 11.1.1 串行通信概述
(1)将数据一位一位顺序传送,只占用一 条传输线。 (2)采用两种方式
时钟频率=n×波特率;n叫做波特率系数或 波特率因子,取值为1、16、32或64。
5
(5)串行通信特点
可节省传输线; 传输速度较慢; 多用在批量数据、距离较长的场合。
(6)串行通信基本方式 同步传送:发送方和接收方时钟信号频率 及相位始终保持一致。 异步传送:通信中两个字符间时间间隔不 固定,在一个字符内各位时间间隔固定。
TEST AL,01H ;否则检查数据是否准备好
JZ WAIT
;未准备好,继续等待检测
MOV DX,04A0H
IN AL,DX
;否则接收一个字节
AND AL,7FH ;保留低7位
MOV [SI],AL ;送数据缓冲区
INC SI
MOV DX,04A2H
JMP WAIT
23
(2)中断方式:用中断方式可实现8251A和CPU
发送断点字符 1:迫使TxD为0
图11-9 8251A命令控制字的格式
15
第11章
D7
D6
D5 D4 D3 D2
D1
D0
DSR SYNDET FE OE PE TxE RxRDY TxRDY
同引脚定义
奇偶错 溢出错 帧出错
图11-10 8251A状态字的格式
16
第11章
8251A 初始化 设置方式
RxC
C/D
RESET
TxC
RD WR TxRDY TxE RxRDY BRKDET
RS-232 接口
外设
波特率 发生器
20
8251A和CPU的通信方式: 可采用查询方式和中断方式。 (1)查询方式:发送数据的程序在初始
化程序之后。 【例11.2】用查询方式发送数据。设要
发送的字节数据在TABLE开始的数据区, 数据放在BX中,数据端口地址04A0H, 控制/状态寄存器端口地址04A2H。
相关文档
最新文档