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

文章目录

第二节 串行通信协议

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

约定包括

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

一、异步串行通信协议

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

异步串行通信数据格式

起始位用逻辑电平零

停止位用逻辑电平高表示

接收过程:接受设备不断检测传输线,当检测到一系列的"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. 初始化与操作流程

相关推荐
iCxhust18 天前
C# 生成命令行程序 将hex格式烧录程序转换成bin烧录格式
开发语言·汇编·单片机·嵌入式硬件·c#·微机原理
iCxhust19 天前
C#进程管理程序
开发语言·汇编·stm32·单片机·c#·微机原理
iCxhust19 天前
MTK8088单板机制作(一)时钟电路
汇编·单片机·嵌入式硬件·微机原理·8088单板机
iCxhust19 天前
8086 汇编位测试使用方法
汇编·单片机·嵌入式硬件·微机原理·8088单板机
iCxhust19 天前
用汇编在8088单板机上创建一个进程
汇编·微机原理
iCxhust22 天前
qeum能否制定真实u盘启动
虚拟机·微机原理·qeum
iCxhust24 天前
8086汇编 word ptr
汇编·单片机·嵌入式硬件·微机原理·8088单板机
iCxhust1 个月前
汇编返回指令ret iret retf区别
汇编·微机原理·8088单板机
say_fall1 个月前
半导体存储器_从分类到Cache完全指南
汇编·微机原理·8086
iCxhust1 个月前
C# 命令行指令 查看二进制文件
开发语言·单片机·嵌入式硬件·c#·proteus·微机原理·8088单板机