如何确定异步链接两端的UART时钟源的容限

描述

本应用笔记讨论了在UART中实现的常用串行异步通信协议的时序要求。本文介绍了如何确定异步链接两端的UART时钟源的容限。RS-232规范可以追溯到1962年,当时它是由电子工业联盟(EIA)首次发布的。该规范随着时间的推移发生了变化,纳入了更高的数据速率,并缩小了电信行业协会(TIA),国际电信联盟(ITU)和国际标准化组织(ISO)要求之间的兼容性差距。

背景技术

RS-232规范可以追溯到1962年,当时它是由电子工业联盟(EIA)首次发布的。该规范随着时间的推移发生了变化,纳入了更高的数据速率,并缩小了电信行业协会(TIA),国际电信联盟(ITU)和国际标准化组织(ISO)要求之间的兼容性差距。RS-232规范的当前版本是1997年10月发布的EIA / TIA-232-F。

RS-232受益于1970年代后期以来MSI IC的可用性,MSI IC具有以合理的价格处理规范的复杂性。这些IC是通用异步接收发送器(UART)。现在,许多大规模集成(LSI)IC(包括微控制器)都具有该功能。

通常,UART的可用性促使业界以非RS-232方式使用RS-232串行协议。常见的示例是RS-485传输,光隔离传输以及使用单端物理层(即0到3.3V而不是±5V或±10V)的传输。本文介绍了串行接口的一般时序方面,而不是握手或物理层的应用细微差别。因此,本应用笔记适用于所有通用UART应用。

UART时序

图1显示了一个典型的UART帧。它包括一个START位,8个数据位和一个STOP位。在RS-232应用中,其他变体也是可能的。例如,数据包的长度可以为5、6或7位,可以有2个STOP位,或者可以在数据包和STOP位之间插入奇偶校验位以进行基本错误检测。图1显示了在UART的发送数据(TXD)或接收数据(RXD)引脚上看到的信令。RS-232总线驱动器会进行反相以及电平转换,因此逻辑1为总线上的负电压,逻辑0为正电压。

接收器

典型的UART数据帧。

当两个UART通信时,假设发送器和接收器都知道信令速度。接收方不知道何时发送数据包(无接收方时钟);因此,该协议称为“异步”。接收器电路相应地比发射器电路复杂。发送器只需以定义的比特率输出一帧数据。相反,接收器必须识别帧的开始以使其自身同步,并因此确定位流的最佳数据采样点。

图2显示了UART接收器用来使其自身与接收到的帧同步的常用方法。接收UART使用的时钟是数据速率的16倍。在低电平有效START位的开始处的下降沿可以识别出一个新的帧。当信号从高电平有效STOP位或总线空闲状态改变时,就会发生这种情况。接收UART在该下降沿复位其计数器,期望中起始位在8个时钟周期后出现,并预期随后每个位的中点将在此后每16个时钟周期出现一次。通常在位时间的中间对START位进行采样,以检查电平是否仍然很低,并确保检测到的下降沿是START位,而不是噪声尖峰。另一个改进是对START位采样了3次(时钟计数7、8和9)

接收器

UART接收帧同步和数据采样点。

编辑:hfy

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分