【微机及接口技术】- 第九章 串行通信与串行接口(下)

文章目录

第二节 串行通信协议

通信协议:通信双发对数据传送控制的一种约定,又称通信规程或链路控制规范

约定包括

  • 数据格式
  • 同步方式
  • 传送速率
  • 传送步骤
  • 检测纠错方式
  • 控制字符

一、异步串行通信协议

异步串行通信协议:靠起始位和停止位来进行字符同步,也称起止式协议。

异步串行通信数据格式

起始位用逻辑电平零

停止位用逻辑电平高表示

接收过程:接受设备不断检测传输线,当检测到一系列的"1"后检测到1个"0"即确认一个字符开始,于是以位时间位间隔移位接受规定的数据位和奇偶检验位,这之后应接收规定位长的停止位"1",若没有收到即为 "帧出错"。

一个字符接收完毕,接收设备继续检测传输线,监视起始位"0"的到来,即下一个字符的开始。

二、同步串行通信协议

同步串行通信协议:以数据块为单位(帧)传送,每个数据块由一个字符序列组成,每个字符取相同位数,字符间连续,没有起始位和停止位,不能有空隙。

帧头部 :数据块的前面设置1-2个同步字符,作为帧的边界和通知对方接收的标志。
帧尾部:校验字符

发送方和接收方要完全同步,用同一时钟进行移位操作。

同步通信规程:面向字符型、面向比特型、面向字节计数。

第三节 串行接口标准RS-232C

一、RS-232C信号线定义

一个完整的RS-232C接口:22根线,采用标准25芯插座。
信道 :主信道、辅信道

远距离串行通信接口标准:基本信号9根。

不同应用场合连线不同,最简单场合只需3根信号线。

RS-232C最简连接

二、电气特性

  1. 应保持电平在 ± (3-15)V
    在数据线T5V,xD和RxD上:逻辑1=-3-15V,即电平低于-3V;逻辑0=+3V-+15V,即电平高于+3V。
  2. 必须进行电平转换
    RS-232C采用佛罗基,其逻辑电平与TTL电平不同。为实现与TTL电路连接,进行电平转换。采用电平转换芯片MAX232和MAX232A(高速)
  3. 必须抗共模噪声干扰

【例题】在以RS-232C标准传送信息时,表示逻辑"1"的电平信号是()

A. +5V

B. -5V

C. 0V

D. +12V

B. 逻辑1电平 -3 --- -15V,采用负逻辑规定逻辑电平。

第四节 可编程串行接口芯片8251A

一、基本性能

8251A USART 通用同步/异步接收发生器,基本性能:可用于同步和异步传送

同步传送 :5 - 8 bit/字符,内部或外部同步,可自动插入同步字符。
异步传送 :5 - 8 bit/字符,时钟速率为通信波特率的1、16、64倍
可产生中止字符 :可产生1、1.5、2个位的停止位,可检查假启动位,自动检测和处理中止字符。
波特率 :DC - 19.2kbit/s(异步),DC - 64kbit/s(同步)

完全双工,双缓冲器和接收器。

误差检测具有奇偶、溢出和帧错误等检测电路。

与Intel8080、8085、8086及8088CPU兼容。

二、内部结构

8251A内部结构框图

  1. 数据总线缓冲器
    三态双向8位缓冲器,使8251A与系统总线连接起来。包含数据缓冲器和命令缓冲器。
  2. 接收器
    在接收时钟RxC作用下,接收RxD引脚上的帧格式化串行数据,并转换为并行数据。
    同时进行校验,若无错,将并行数据存放在数据总线缓冲器中,并发出接收器准备好信号(RxRDY=1),通知CPU读数。
    若校验有误,则在状态寄存器中保存,以便CPU处理。
    错误类型有3种:奇偶错误、帧错误、溢出(丢失)错误
  3. 发送器
    把待发送的并行数据转换成所要求的帧格式,在发送时钟TxC作用下,由TxD引脚逐位的发送。发送完一帧数据后发送器准备好信号置位(TxRDY=1),通知CPU发送下一帧数据。
  4. 读/写控制和调制控制
    实现对8251A的读写和对MODEM的控制。

三、外部引脚功能

8251A外部引脚图

1. 同CPU的连接信号

RESET:6倍时钟宽的高电平信号使得芯片复位,处于空闲状态。

CLK:时钟输入端,同步方式下该时钟频率比数据速率大30倍以上,异步方式下大4.5倍。

/WR、/RD:读/写信号输入端。

C/#D:输入高电平,CPU对芯片写控制字或读控制字;反之,读/写内容为数据。与地址线的最低位相连。

8251A占两个端口地址,偶地址为数据,奇地址为控制。

/CS:片选输入端,与地址译码器输出连接。

D0-D7:双向8为数据线,CPU通过D0-D7写控制字或数据,读状态字或数据。。

2. MODEM控制信号(4个)

/DTR:数据终端准备好,输出,低有效,CPU准备就绪。

/RSR:数据装置准备好,输入,低有效,表示调制解调器或外设的数据准备好。

/RTS:请求发送,输出,低有效,通知调制器,CPU已准备好发送。

/CTS:清除发送信号,输入,低有效,由调制解调器或其他外设送到8251A,表示允许USART发送数据。

3. 发送器有关信号(4个)

TxD:发送数据

TxRDY:发送器准备好。有雄安表示发送缓冲器已空,CPU可以相芯片送入新数据。

TxE:发送缓冲器空标志。只要发送缓冲器种没有再要发送的字符该引脚就变高。克表示一段数据传输的结束。

/TxC:输入控制发送器数据速率的时钟。每个数据的移位输出都是在/TxC的下降沿实现的。

4.接收器有关信号(4个)

RxD:接收数据。

RxRDY:接收器准备好。为高有效表示接收缓冲器由组装好的一个数据字符,可通知CPU取走。

/RxC:接收时钟输入端。时钟的上升沿,把数据取样输入。常与/TxC共用同一个时钟源。

SYNDET/BD:同步方式下的同步检测端和异步方式下的终止检测输出。

四、8251A的编程

方式指令:定义8251A的一般工作特性,复位后由CPU写入。

命令指令:指定芯片的实际操作,在写入方式指令之后。

1. 方式指令

指定通信方式及方式下的数据格式。

2. 命令指令

指定8251A进行某种操作或处于某种状态。

TxEN:允许发送。=1,允许发送;可作发送中断屏蔽位。

DTR:数据终端准备就绪。=1,表示终端设备已准备好。

RxE:允许接收。 = 1,允许接收;可作接收中断屏蔽位。

SBRK:发中止字符。=1,强迫TxD为低电平,输出连续的空号,即空闲时的输出数据为低电平;=0,正常操作,

线路输出仍为高电平。

ER:错误标志复位。=1,使状态字中的错误标志位(PE/OE/FE)复位。

RTS:请求发送。=1,强迫/RTS为低电平,使其有效。DTR和RTS是送往MODEM的控制信号。

IR:内部复位。=1,进行内部复位,发方式命令之前一定要进行内部复位。

EH:进入搜索方式。=1,启动搜索同步字符,此时将接收到的数据码逐位组合成字符,做同步比较,直到找到同步码后,引脚SYNDET输出1为止。然后再把这个控制位回到0,做正常接收。

地址区分:方式指令和命令指令写入时所用的口地址相同,采用写入次序进行区分。对异步通信,复位后写u人的为方式指令,此后写入的才是命令指令。

3. 状态字

CPU向8251A发送各种操作命令字,是依据8251A当前的运行状态决定的。

状态字中的错误标志是再接收过程中自动检测设置的。

【例题】

从8251A的状态字可知,有哪些出错检测?

【答案】帧出错、溢出错、奇偶错

【解析】8251A的状态字中D3-D5这3个位用来标志接收时检测3类错误,帧出错、溢出错、奇偶错。

4. 初始化与操作流程

相关推荐
Loup&卡普1 个月前
【微机及接口技术】- 第四章 内部存储器及其接口(中)
微机原理
Loup&卡普1 个月前
【微机及接口技术】- 第四章 内部存储器及其接口(上)
微机原理
非得登录才能看吗?6 个月前
汇编案例 之 HEX到ASCII码的转换
汇编·微机原理·8086
命运之光8 个月前
【微机原理】指令JZ和JNZ的区别
算法·微机原理
命运之光9 个月前
【经验分享】微机原理、指令判断、判断指令是否正确判断指令是否正确
指令·计算机组成原理·微机原理
吃个西瓜嘤1 年前
微机原理 常考实验 第(二)弹~
汇编·笔记·微机原理