串行接口芯片8251A.
8255A、8251A的原理及应用

8255A的内部结构,由三部分电路组成:与CPU的接口电路、内部控制逻辑电路和与外设连接的输入/输出接口电路。
D7~D0(data bus):三态、双向数据线,与CPU数据总线连接,用来传送数据。
(chip select):片选信号线,低电平有效时,芯片被选中。
A1, A0(port address):地址线,用来选择内部端口。
(read):读出信号线,低电平有效时,允许数据读出。
(write):写入信号线,低电平有效时,允许数据写入。
RESET(reset):复位信号线,高电平有效时,将所有内部寄存器(包括控制寄存器)清0。
PA7~PA0(port A):A口输入/输出信号线。
PB7~PB0(port B):B口输入/输出信号线。
PC7~PC0(port C):C口输入/输出信号线。
VCC:+5V电源。
GND:电源地线。
8255A的工作方式方式0:基本输入输出方式适用于无条件传送和查询方式的接口电路方式1:选通输入输出方式适用于查询和中断方式的接口电路方式2:双向选通传送方式适用于与双向传送数据的外设适用于查询和中断方式的接口电路8255A初始化编程8255A的A,B,C三个端口的工作方式是在初始化编程时,通过向8255A的控制端口写入控制字来设定的。
8255A由编程写入的控制字有两个:方式控制字和置位/复位控制字。
方式控制字用于设置端口A, B, C的工作方式和数据传送方向;置位/复位控制字用于设置C口的PC7~PC0中某一条口线PC i(i=0~7)的电平。
两个控制字公用一个端口地址,由控制字的最高位作为区分这两个控制字的标志位。
(1)方式控制字的格式8255A工作方式控制字的格式如图7.11所示。
D0:设置PC3~PC0的数据传送方向。
D0=1为输入;D0=0为输出。
D1:设置B口的数据传送方向。
D1=1为输入;D1=0为输出.D2:设置B口的工作方式。
D2=1为方式1;D2=0为方式0。
可编程串行通信接口芯片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

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。
串行通信接口芯片8251

串行通信: 串行通信: 每个时间单位仅传送一位信息; ●每个时间单位仅传送一位信息; 每个数据的各位依次传送。 ●每个数据的各位依次传送。
优点: 优点: 传输线少,成本低, ●传输线少,成本低,传输距离远
串行通信的基本方式
——同步通信 同步通信 异步通信
异步通信特点
以字符作为通信单位。 以字符作为通信单位。 在通信的数据流中, 在通信的数据流中, 字符与字符之间的传送是异步的, 字符与字符之间的传送是异步的, 异步通信的“异步” (异步通信的“异步”就主要体现 在字符与字符之间的异步) 在字符与字符之间的异步) 字符内部各位(位与位之间)同步 字符内部各位(位与位之间) 传送。 传送。
停止位标志每个字 符的结束。 符的结束。
收发双方不必使用同一个时钟, 收发双方不必使用同一个时钟,只需使用两个频 率相同的本地局部时钟, 率相同的本地局部时钟,使收发双方在一个字符 内保持同步,即可正确可靠地传送。 内保持同步,即可正确可靠地传送。
异步通信协议 1、异步通信格式 、
个字符( 第n个字符(一帧信息) 个字符 一帧信息)
8251 的外部引脚
8251 的外部引脚
8251 的外部引脚
8251 的外部引脚
8251 的外部引脚
8251 的外部引脚
8251A初始化流程 初始化流程
8251A的方式指令 的方式指令
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

串行通信18027412 杨滢齐一、实验目的1.了解串行通信的基本原理;2.掌握串行接口芯片8251 或8250 的工作原理和编程方法。
二、实验仪器与材料1.Proteus 仿真软件2.PC 微机1 台三、实验内容根据上面提供的实验电路,补画U6,U8 两片电路缺少的连线。
然后根据自己画的连线图,为8086 编写汇编程序,实现利用8251 向超级终端(标号为GET)发送字符串,实现串行通讯。
字符串不少于20 个字符,内容自定。
四、实验提示1.8251初始化为异步通讯方式,1位停止位,无校验,8位数据,波特率因子为1。
2.超级终端也要设置的与8251相同(在超级终端图标上右击鼠标,选Edit……),其中的波特率可以自己设定,比如9600。
3.图上的时钟发生器用来为8251 提供发送/接收时钟,根据波特率,波特率因子,发送/接收时钟三者之间的关系,当波特率因子为1时,发送/接收时钟与波特率是相同的,因此,如果在第2步,你设置波特率为9600,那么时钟也要设定为9600Hz(图标上右击鼠标,选Edit……)。
4.U6(74HC138)和U8(8251A )的连线决定了8251占用的地址,请自己设定。
5.建议的程序流程图如下: 异步,1位停止位i ,无校验,8位数据,波特率因子为18251操作字 清除错误,能收能发 N五、实验预习要求 1.复习串行通信的特点和 8251 或 8250 的编程方法。
2.根据实验内容和实验提示编写实验程序。
六、实验习题与思考1. 若发送的字符进行偶校验,程序如何编写?;====================================================================; Main.asm file generated by New Project wizard;; Created: 周日 5月 24 2020; Processor: 8086; Compiler: MASM32;; Before starting simulation set Internal Memory Size; in the 8086 model properties to 0x10000;====================================================================开始 发完结束设定字符串指针设定计数初值 读 8251 状态字8251 控制字计数减一循环发送一个字符是否能发送YDATA SEGMENTDA1 DW 20HTABEL1 DB 'beijing university of technology' PTCON EQU 26HPTDATA EQU 24HDATA ENDSCODE SEGMENT PUBLIC 'CODE'ASSUME CS:CODE, DS:DATASTART:MOV AL, 00HMOV DX, PTCONOUT DX, ALOUT DX, ALOUT DX, ALMOV AL, 40HOUT DX, ALMOV AL, 7DH ; 模式控制字MOV DX, PTCONOUT DX, ALMOV AL, 37H ; 操作控制字OUT DX, ALMOV AX, DATAMOV DS, AXMOV DI, OFFSET TABEL1MOV CX, DA1NEXT:MOV DX, PTCON ; 查询TxRDY是否有效IN AL, DXAND AL, 01HJZ NEXT ; TXRDY=0,发送没准备好MOV DX, PTDATAMOV AL, [DI]OUT DX, ALINC DILOOP NEXTENDLESS:JMP ENDLESSCODE ENDSEND START2.若从超级终端接收一个字符(在超级终端的窗口键入一个字符),将接收到的字符的ASCII码加1,再发送回超级终端显示。
第七章终结篇——8251A的总结

第七章终结篇——8251A的总结总算把这个第七章复习完了,我把剩下⼀点关于8251A的发上来吧本来在讲解8251A书本上还有关于RS232和串⼝通信的讲解,但是太浅了,就不放了,有兴趣的朋友可以⾃⾏参考其他⽂章串⾏通信芯⽚8251A有以下特点1. 可以⽤于同步或者异步传输,同步0-64kbps,异步0-19.2kpbs2. 同步传送的时候,5-8位/字符,可以⽤于内同步或者外同步,可⾃动插⼊同步字符3. 异步传送的时候,5-8位/字符,有1,2,1.5个停⽌位4. 完全双⼯,双缓冲发送和接受数据5. 具有出错检查,奇偶校验、溢出、和帧错误等检测电路好吧,为啥要这个8251A因为计算机内部都是并⾏传输数据的,但是长距离通信都是⽤的串⾏通信的(这些概念不太明⽩的不懂的朋友可以⾃⾏百度⼀下概念或者看看书)必须要个东西来转化⼀下82518251的内部结构内部结构包括接收器,发送器,读/写控制逻辑,数据总线缓冲器和调制解调控制电路五⼤部分接收器包括接收缓冲器,并⾏转换逻辑和接受控制电路三个部分接收缓冲器对外引脚为RxD,功能是从此引脚上接收串⾏数据,然后转换成并⾏数据,是由接受移位寄存器和接收数据缓冲器组成双缓冲结构接受控制电路是配合缓冲器⼯作的,作⽤如下1 .在异步⽅式下,芯⽚复位后,先检测输⼊信号中的有效1,⼀旦检测到到,就接着寻找有效的低电平来确定启动位2 消除假启动⼲扰3 对接收到的信息进⾏奇偶校验,并根据校验结果建⽴相应的状态位4 检测停⽌位,并按检测结构建⽴状态位发送器和接收器差不多,也是有发送缓冲器,发送控制电路和并串转换逻辑3个部分发送缓冲器上⾯接的是TxD脚,发送数据缓冲器和发送移位寄存器组成了发送的双缓冲结构,发送控制电路也是辅助发送缓冲器的,但是和接受的功能不⼀样发送控制电路作⽤如下1. 在异步⽅式下插⼊起始位,校验位和停⽌位2. 在同步⽅式下,插⼊同步字符,在数据中插⼊校验位数据总线缓冲器提供与8251A和CPU系统总线相连,在CPU执⾏输⼊输出操作的时候,进⾏数据交换或者读写命令读/写控制逻辑电路⽤来配合总线缓冲器⼯作1. 写信号WR#,把数据总线的信号(数据/控制字)写⼊8251A2. 读信号RD#,将状态/数据字发送到CPU(发到数据总线)3. 接收控制/数据信号C/D#,与读。
8-3串行接口芯片8251A

串行接口芯片8251A8251A基本功能⏹可用于同步和异步通信方式(通信方式通过对方式字编程实现):☐同步方式:波特率0-64Kbps,每个字符可为5~8位,可使用内部同步检测和外部同步检测,能自动插入同步字符。
☐异步方式:波特率0-19.2Kbps,每个字符可为5~8位,自动增加起始位、停止位和校验位。
时钟TxC,RxC的时钟频率为传输波特率的1,16和64倍。
⏹全双工,具有双缓冲器接收器和发送器;⏹出错检测,具有奇偶、溢出和帧错等检测电路。
8251A的内部结构8251A的内部结构主要包括:数据总线缓冲器、接收缓冲器、接收控制电路、发送缓冲器、发送控制电路、调制/解调控制电路、读/写控制逻辑电路等数据总线缓冲器发送缓冲器发送控制电路接收缓冲器接收控制电路D0~D7SYNDETRxDRxRDY读写控制电路C / DCLKRESETRDWRCSDSRCTSDTRRTSRxCTxCTxETxRDYTxD调制解调控制电路内部总线8251A的内部结构⏹发送器:包括发送缓冲器和发送控制电路☐采用异步方式时,则由发送控制电路自动在其首尾加上起始位、奇偶校验位和停止位,然后从起始位开始,经移位寄存器从数据输出线TxD逐位串行输出。
发送速率取决于TxC接收的发送时钟频率,可以编程定义是发送速率的1、16、64倍。
8251A的内部结构☐采用同步方式,则在发送数据之前,发送器将自动送出1个或2个同步字符,然后才逐位串行输出数据。
◆如果CPU与8251A之间采用中断方式交换信息,那么TxRDY可作为向CPU发出的中断请求信号,表示发送缓冲器已空,可以接收CPU下一个数据。
◆当发送器中的8位数据串行发送完毕时,由发送控制电路向CPU发出TxE有效信号,表示发送器中移位寄存器已空。
8251A的内部结构⏹接收器:包括接收缓冲器和接收控制电路从RxD引脚上接收串行数据转换成并行数据后存入接收缓冲器。
☐异步方式:在RxD线上检测低电平,将检测到的低电平作为起始位,8251A开始进行采样,完成字符装配,并进行奇偶校验和去掉停止位,变成了并行数据后,送到数据输入寄存器,同时发出RxRDY信号送CPU,表示已经收到一个可用的数据。
串行通信和可编程接口芯片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芯片

接收端初始化程序和接收控制程序
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
串行接口芯片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芯 片可以用于实现计算机与各种外表和 控制设备之间的通讯。
串行接口芯片8251

按字符一一传送为异步方式。
3、差异: 1) 同步方式须双方用一个时钟进行协调。 2) 异步方式虽也须约定一个时钟作为每一位
的长度,但无须将时钟发送出去。 3) 同步方式比异步方式效率高
第三章 串行接口芯片8251
可编程串行通讯接口8251A :
第三章 串行接口芯片8251
基本的串行通讯有两种类型: 1)同步通讯 2)异步通讯。
同步字符 信息帧 同步通讯格式
校验字符
起始位 数
5 ~8个 字符
据 校验位 停止位(1,1.5,2位) 异步通讯格式
第三章 串行接口芯片8251
2、传送速率:
串行通讯中规定,每秒传送的位 数为波特率如:110,300,600,1200, 1800,2400,4800,9600,19200标准 波特率。
第三章 串行接口芯片8251
3、硬件支持:
为实现串行通讯还必须有硬件 支持,即串行口接口的标准化。 最常用的是 RS-232-C标准。
第三章 串行接口芯片8251
1)信号电平标准:
TTL
RS-232
1489
接口 TTL 1488 RS-232
TTL 1488
TTL 1489
TTL与RS-232电平变换
接口
2)控制信号定义:
25芯插头插座。
第三章 串行接口芯片8251
通讯方式:
1、 全双I方式,半双I方式: 通讯通道中,对数据发与收两个传
输方向采用不同的通路,该通讯方式为 全双工方式。
若收与发两个传输方向使用单一通 道,为半双工方式。
第三章 串行接口芯片8251
2、 同步方式、异步方式: 将许多数据组成一个信息组(信
8251复习资料

8251A 是通用同步异步接收发送器,具有独立的发送器和接收器,能以单工、半双工和全双工三种方式通信,可用同步和异步方式传输信息。
通过初始化编程设置串行通信接口芯片的工作方式、波特因子、数据帧格式及8251A的工作状态。
1)与CPU连接信号D0~D7(数据线):接至系统的D7—D0,用于传数据、控制和状态信息。
RD、WR(读写控制):接至IOR、IOW,控制CPU与I/O端口间的数据、命令和状态信息的写入与读出。
CS:(片选信号):可接至系统的片选译码器CS=0,CPU可读写8251.C/D(地址线):可接系统的A0。
=1:CPU 访问命令寄存器或状态寄存器=0:CPU访问数据寄存器(2)状态信号:供CPU查询或向CPU申请。
TxRDY:发送器准备好。
=1表示发送器已准备好,通知CPU可以向8251发送数据。
CPU写入一个发送字符后,TxRDY=0TxRDY可用于查询的条件,CPU可从状态字的D0位读出,判断后可决定是否向8251写入发送字符。
TxRDY也可以用作中断请求信号,=1表示请求CPU向8251写入发送的数据。
②RxRDY:接收器准备好,=1表示8251A已从它的串行输入端接受了一个字符,通知CPU 取走。
CPU取走接收的字符后RxRDY=0。
RxRDY可用于查询的条件,CPU可从状态字的D1位读出,判断后可决定是否读8251接收的字符。
RxRDY也可以用作中断请求信号,=1表示请求CPU读出8251接收的数据。
③TxE:发送器空,=1指示发生器中的数据已经发送,在半双工方式时可用于数据传送方向的切换控制,④SYNDET:同步字符检出/间断信号检出BD。
同步方式设为内同步:输出,表示8251检出了同步字符。
同步方式设为外同步:输入,表示外部检出同步字符后通知8251。
异步方式时当8251检出间断信号BD后,输出为1.3)时钟信号①TxC:发送器时钟,由外部波特率时钟发生器提供。
②RxC:接收时钟,由外部波特率时钟发生器提供。
微机接口技术考试题带答案

第一章微机接口技术概述1.1. 8086微处理器可寻址访问的最大I/O空间是〔〕。
B.64KBC.640KBD.1MB参考答案:B2.的控制总线提供〔〕。
A.数据信号流B.所有存储器和I/O设备的时序信号及控制信号C.来自I/O设备和存储器的响应信号D.前面B和C两项参考答案:D3. 3. CPU的数据总线提供〔〕。
A.数据信号流B.所有存储器和I/O设备的时序信号及控制信号C.来自I/O设备和存储器的响应信号D.地址信号流参考答案:A4. 4. CPU的地址总线提供〔〕。
A.数据信号流B.所有存储器和I/O设备的时序信号及控制信号C.来自I/O设备和存储器的响应信号D.地址信号流参考答案:D5. 5. CPU在执行OUT DX,AL指令时,CPU往控制总线上送出的有效信号是〔〕。
A. B C D.参考答案:A6. 6. CPU在执行OUT DX,AL指令时,CPU往地址总线上送出的有效信号是〔〕。
存放器所存放的地址 B AL存放器所存放的数据C D.参考答案:A7.7. CPU在执行OUT DX,AL指令时,CPU往数据总线上送出的有效信号是〔〕。
存放器所存放的地址 B AL存放器所存放的数据C D.参考答案:B11.11. 8086CPU在作总线操作时,遇到READY=L后可插入〔〕。
个等待周期 B 等待周期个数由具体情况所定C 2个等待周期 D. 3个等待周期参考答案:B12.12. 8086系统中,SP〔〕。
A.只能指向奇地址单元 B 只能指向偶地址单元C最好指向偶地址单元 D. 最好指向奇地址单元参考答案:B13.13. 8086 系统配置在最大方式比最小方式增加的一片专用芯片是〔〕。
A.总线驱动器74LS245 B 总线锁存器74LS373C 总线控制器8288 D. 中断控制器8259参考答案:C14.14. 8086/8088CPU读总线周期中,T1~T4期间一直保持有效的信号是〔〕。
8251芯片

8251芯片8251芯片是一种通讯接口芯片,主要用于计算机之间或计算机与外设之间的数据传输。
该芯片通过串行和并行数据传输的方式,实现了计算机之间的数据传输和通信功能。
8251芯片提供了串行和并行两种模式的通信接口。
在串行模式下,数据以位的形式传输,适用于长距离传输和低速传输场景。
在并行模式下,数据以字节或字的形式传输,适用于短距离传输和高速传输场景。
8251芯片具有以下主要功能:1. 数据格式控制:8251芯片支持多种数据格式,包括异步串行传输、同步传输和标准格式传输等。
用户可以根据需要选择合适的数据传输格式。
2. 时钟控制:8251芯片提供了多个时钟源,可以根据需要选择不同的时钟源。
同时,芯片还支持外部时钟源的输入。
3. 数据传输控制:芯片可以根据指令进行数据传输的启动、停止和暂停等控制操作。
同时,芯片还支持自动重整、自动请求和自动调整等功能,可以提高数据传输的效率。
4. 错误检测:8251芯片提供了丰富的错误检测和纠错功能,包括奇偶校验、帧错误检测等。
可以有效减少数据传输过程中的错误和丢失。
5. 缓冲区管理:芯片内置了数据缓冲区,可以存储待传输的数据。
通过合理调整缓冲区大小和设置触发阈值,可以实现高效的数据传输。
8251芯片广泛应用于计算机和外设之间的数据传输和通信领域。
它可以与各种外设进行通信,包括打印机、调制解调器、终端设备等。
它不仅提供了稳定可靠的数据传输功能,还具备丰富的扩展接口,可实现更多的功能拓展。
总结来说,8251芯片是一种功能强大的通讯接口芯片,通过串行和并行的数据传输方式,实现了计算机之间或计算机与外设之间的数据传输和通信功能。
它具有多种数据格式控制、时钟控制、数据传输控制、错误检测和缓冲区管理等功能,广泛应用于计算机和外设之间的通信领域。
串行接口芯片8251A.

内部产生起始、奇偶 检验、停止位,按约定 的波特率从TxD输出。 当数据全部输出结束, 在TXD发出连续低电平 (TxE=1)。
停止位 1
奇偶位
发送移位寄存器
起始位
2. 8251A的引脚功能
8251A的引脚排列如下图所示
D2 D3 R XD GN D D4 D5 D6 D7 TXC WR CS C/D RD RXRDY
4. 发送/接收时钟
在异步串行通信中,发送端需要用一定频率的时钟 来决定发送每 l 位数据所占的时间长度(称为位宽 度),接收端也要用一定频率的时钟来测定每一位 输入数据的位宽度。 在进行串行通信时,根据传送的波特率来确定发送 时钟和接收时钟的频率。在异步传送中每发送一位 数据的时间长度由发送时钟决定,每接收一位数据 的时间长度由接收时钟决定,它们和波特率之间有 如下关系:时钟频率=n×波特率
(4)读/写控制逻辑信号
CS:片选信号,低电平有效。由CPU的IO/及地址信号经译码后供给。
C/D:控制/数据端。为高电平时CPU从数据总线读入的是状态信息;为低 电平时CPU读入的是数据。同样,C/D端为高电平时CPU写入的是命令; C/D为低电平时CPU输出数据。C/D与CPU的一条地址线相连。
(2)接收器 作用:接收器接收在RxD上的串行数据并按规定的 格式转换为并行数据,存放在接收数据缓冲器中。
工作过程:(异步方式)当8251允许接收并准备好接收数据时,监测RxD 端,当检测到起始位(低电平)后,使用16倍率的内部CLK,连续检测8 个0确认。然后按波特率移位、检测RXD,直至停止位。内部删除起始、 停止位 1 奇偶位 奇偶、停止位接收缓冲寄存器后,使 RxRDY 为高,向CPU提出中断申请。
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、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
状态缓冲器、接收数据缓冲器、数据/命 11-2-2 8251A的基本结构 令缓冲器
1. 8251A的内部结构
DB
数据总 线缓冲 器
发送 缓冲器
TxD
RESET CLK RD WR C/D CS DSR DTR CTS RTS
读/写 逻辑
发送 控制 电路
TxRDY TxE TxC
接收 缓冲器
调制解 调控制 电路
RxD
接收 控制 电路
RxRDY RxC SYNDET
(1)数据总线缓冲器
数据总线缓冲器是 CPU与 8251A 之间的数据 接口,它包含3个8位缓冲寄存器,其中两个 寄存器分别用来存放 CPU从 8251A 读取的状 态 信 息 或 数 据 , 一 个 寄 存 器 存 放 CPU 向 8251A写入的控制字或数据。数据总线缓冲 器将 8251A 的 8条数据线 D7~ D0和 CPU 的系 统数据总线相连。
~ ~
同步字符
数据
数据
数据
校验字符
~ ~
(2) 异步通信
串行通信时的数据、控制和状态信息都使 用同一根信号线传送 收发双方必须遵守共同的通信协议(通信 规程),才能解决传送速率、信息格式、 位同步、字符同步、数据校验等问题 串行异步通信以字符为单位进行传输,其 通信协议是起止式异步通信协议
起止式异步通信协议
5. 串行通信的方式
串行通信按通信约定的格式分为两种:异步 通信方式和同步通信方式。
5. 串行通信的方式
(1)同步通信 以一个数据块(帧)为传输单位,每个数据块附 加1个或2个同步字符,最后以校验字符结束 同步通信的数据传输效率和传输速率较高,但硬 件电路比较复杂 串行同步通信主要应用在网络当中 最常使用高级数据链路控制协议HDLC
2. 传输制式
全双工
站A 站B
半双工
站A
站B
单工
示例
站A
站B
3、数据传输速率
数据传输速率也称比特率(Bit Rate)
每秒传输的二进制位数bps 字符中每个二进制位持续的时间长度都一样,为数据 传输速率的倒数
当进行二进制数码传输,且每位时间长度相等时, 比特率还等于波特率(Baud Rate) 过去,串行异步通信的数据传输速率限制在 50 bps到9600 bps之间。现在,可以达到115200 bps 或更高
4. 发送/接收时钟
在异步串行通信中,发送端需要用一定频率的时钟 来决定发送每 l 位数据所占的时间长度(称为位宽 度),接收端也要用一定频率的时钟来测定每一位 输入数据的位宽度。 在进行串行通信时,根据传送的波特率来确定发送 时钟和接收时钟的频率。在异步传送中每发送一位 数据的时间长度由发送时钟决定,每接收一位数据 的时间长度由接收时钟决定,它们和波特率之间有 如下关系:时钟频率=n×波特率
11-1-2 信号的调制与解调
调制(Modulating)
把数字信号转换为电话线路传送的模拟信号 将电话线路的模拟信号转换为数字信号
解调(Demodulating)
调制解调器MODEM
具有调制和解调功能的器件合制在一个装置
示例
11-2 可编程串行接口芯片8251A
Intel 8251A是一种通用的同步异步接收/ 发送器( USART )芯片。它作为一种外围 器件,可通过编程选用某一种串行通信技 术 。 8251A 具 有 独 立 的 发 送 器 和 接 收 器.因此,它能够以单工、半双工或全双 工方式进行通信,并且提供一些基本的控 制信号,可以方便地与MODEM连接。
RxD 内部 CLK
字符 数据位
起始位 1 0 0/1 0/1 低位
校验位 停止位 空闲位 0/1 0/1 1 1 高位 1
…
起始位 —— 每个字符开始传送的标志, 数据位 —— 数据位紧跟着起始位传送。 校验位 —— 用于校验是否传送正确;可 停止位 —— 表示该字符传送结束。停止 空闲位 —— 传送字符之间的逻辑 1电平, 起始位采用逻辑 0 电平 由 5 ~ 8 个二进制位组成,低位先传送 选择奇检验、偶校验或不传送校验位 位采用逻辑 1电平,可选择1、1.5或2位 表示没有进行传送
(2)接收器 作用:接收器接收在RxD上的串行数据并按规定的 格式转换为并行数据,存放在接收数据缓冲器中。
工作过程:(异步方式)当8251允许接收并准备好接收数据时,监测RxD 端,当检测到起始位(低电平)后,使用16倍率的内部CLK,连续检测8 个0确认。然后按波特率移位、检测RXD,直至停止位。内部删除起始、 停止位 1 奇偶位 奇偶、停止位接收缓冲寄存器后,使 RxRDY 为高,向CPU提出中断申请。
第11章 可编程串行接口芯片8251A
教学重点
通信程序 异步通信协议和RS232C接口
11-1 基本概念
11-1-1 串行通信的基本概念 1、串行通信 将数据分解成二进制位用一条信号线,一位一位顺序传 送的方式 串行通信有以下的特点: 用于通信的线路少,因而在远距离通信时可以极大地降 低成本 串行通信适合于远距离数据传送,也常用于速度要求不 高的近距离数据传送 PC系列机上有两个串行异步通信接口、键盘、鼠标器与 主机间采用串行数据传送
11-2-1 8251A的基本性能
( 1)通信初始化程序可以工作在同步通信或异步通信方式。同步方式 下,波特率为0~64Kbps;异步方式下,波特率为0~19.2Kbps。 ( 2)同步方式时,可设定为内同步或外同步两种做法,同步字符允许 采用单同步字符和双同步字符,由用户选定。数据位可在5~8位之间进 行选择。 (3)异步方式时,数据位仍可在5~8位范围内选用,用1位作为奇偶校 验位或不设置奇偶位。此外,8251A在异步方式下能自动为每个数据增 加1位启动位及1位、1.5位或2位停止位(由初始化程序选择)。 ( 4)8251A具有奇偶校验、帧校验和溢出校验三种字符数据的校验方 式,校验位的插入、检查和出错标志的建立均由芯片自动完成。 ( 5) 8251A 能与 MODEM直接相连,接收和发送的数据均可存放在各 自的缓冲器中,以便实现全双工通信。