文档详情

串行输入输出接口.pptx

发布:2025-06-03约8.03千字共10页下载文档
文本预览下载声明

概述串行通信的实现串行通信的基本术语可编程串行通讯接口芯片8251A简介串行通信RS-232CUSB总线简介第八章串行输入/输出接口

8.1概述串行数据计算机与外部信息交换方式有两种,一种是并行通信,另一种是串行通信。并行通信时,数据各位同时传送。而串行通信时,数据和控制信息是一位接一位串行地传送下去。这样,虽然速度会慢一些,但传送距离比并行通信长,硬件电路也相应简单些。

现在的台式PC机一般至少有两个RS-232串行口COM1和COM2,通常COM1使用的是9针D形连接器,而COM2使用的是老式的DB25针连接器。

并行通信和串行通信的特点:串行通信是逐位传送数据,所以一个多位数据需要多次传送。比如一个8位的字节型数据至少需要8次传送。它有如下特点:速度较慢;引线少;距离长。12二、串行通信的实现

串行通信的硬件条件在硬件上,串行通信系统的核心部件是移位寄存器,其中在发端要有一个并入串出移位寄存器,在收端要有一个串入并出移位寄存器。

001100000000110000000010001D7D0

串行通信的同步为了可靠的串行通信,同步信号起到至关重要的作用。在理想情况下,同步信号应该在数据信号线上出现有效数据期间的中心点有效,因为这时数据线上的数据是最稳定的。

但在典型的串行通信系统中,是不存在同步信号线的!如何实现串行通信的中数据传送的同步呢?系统从软件和硬件两方面采取了如下三个措施:

设置波特率波特率是指单位时间内传送的位数,单位是比特/秒。设置数据的传送格式,一般地串行通信在传送数据时,并不是单纯地传送数据位信息。为了使数据传送可靠,还设定了其他一些辅助位。

设置波特率因子在异步通信方式进行通信时,发送端需要用时钟来决定每1位对应的时间长度,接收端也需要用一个时钟来测定每1位的时间长度,前一个时钟叫发送时钟,后一个时钟叫接收时钟。这两个时钟的频率可以是波特率的数倍,一般取16倍、32倍或64倍。这个倍数就称为波特率因子。

波特率011/波特率因子02接收时钟031200×16=19200120004

串行通信方式8.2串行通信的基本技术异步通讯异步通信是指以字符为单位传送数据,用起始位和停止位标识每个字符的开始和结束字符,两次传送时间隔不固定。同步通信异步通讯为了可靠地传送数据,在每次传送数据的同时,附加了一些标志位。在大量数据传送时,为了提高速度,就去掉这些标志,这就是同步通讯。采用同步传送,在数据块开始处要用同步字符来指示,并在发送端和接收端之间要用时钟来实现同步。

串行通讯中的数据传送方向半双工每次只能有一个站发送。完全双工

两个站都能同时发送称完全双工。

异步接收/发送器(UART)

串行接口的基本结构主要是异步接收/发送器(UART),它不仅包括并行数据和串行数据之间的相互转换,还有检测串行通信在传送过程中可能发生错误的逻辑部件。

如上所述,在接收时,UART检查接收到的每一个字符的“1”的个数这个标志,发出奇偶校验出错信息。a.奇偶错误若接收到的字符格式不符合规定(如缺少停止位等),则置位该标志,发出帧出错信息。b.帧错误UART是一种双缓冲器结构。例如,在接收时,接收的数据先由移位寄存器移位,把串行数据变成并行数据,然后送到接收数据寄存器,由输入指令将数据送到CPU中。由于数据送到接收数据寄存器,所以即使CPU还没取走这个数据,UART也可以接收另一个新的字符。但若UABT接收到第二个字符的停止位,且要把第二个字符传送到接收数据寄存器时,CPU还没取走上一个数据,于是第一个数据会被丢失。如果UART出现这种情况就置位丢失(溢出)标志,发出丢失

显示全部
相似文档