rs232接口引脚定义_电子设计 | 串口,UART,RS232之间的区别

922bfb82fbd431c3ebf96b4323711b74.png

串口是我们平时在调试板子和程序时经常使用到的。就像榨菜一样,便宜又百搭。对于新人来说,却也容易因为概念不清晰而犯错。串行通信,UART,RS232这些东西是一会事吗?如果你分不清这些名词,那就值得看一下这篇文章。

01 串行通信

首先看下串行通信是个啥。我们通常说的串行通信其实是一种想法,只是种想法。串行通信的思想是将数字信号通过一根数据线一个Bit一个Bit的发送出去,这种想法是相对于并行通信而存在的。并行通信的应用中通常会有8根16根或32根不等的数据线,一次就可以输出一个Byte或一个Word。既然串行通信只是一个想法,那我们要做些什么事情才能把这个想法变成现实呢?我们可以用两个火把,两种颜色,一个黄的,一个红的。黄的代表数据,亮了是1,灭了是0。那应该在什么时候记录数据呢?红的火把从暗到亮的时候记录数据。这样我们就可以得到一连串的010101111…….了。我们的火把同步串行通信接口(Torch Synchronous Serial Interface,TSSI)就设计完成了。

1998956067bfba93b7c20c79264bb97e.png

02 UART

如果把上面的黄、红火把发出的光换成我们的专业术语,就会是数据信号和时钟信号。而UART(Universal Asynchronous Receiver/Transmitter)就类似那两个产生信号的火把再加上记录数据和举火把的小人, 这是一个看的见摸的着的电路。这个电路里有位移寄存器、波特率发生器、缓存器等。区别于我们的TSSI的是,UART 没有生成时钟信号去同步数据发送端和数据接收端,没有时钟信号线。它只用了一个数据线。当要传输数据的时候Transmitter直接在信号线上来个电平跳变,提醒Receiver数据要来了。Receiver在感知到这个跳变信号后开始采样。工程中用到的采样频率一般是数据发送频率(波特率)的4倍或16倍。Transmitter的数据发送频率就被称之为波特率。因为跳变的电平信号已经起到了一定的让Receiver和Transmitter同步的作用,再加上采样频率高于波特率,Receiver和Transmitter之间就没有必要再多一根时钟信号线了,也就是时钟可以不同步,可以有略微的差别(5%左右)。这就是大名鼎鼎的串行异步通信名字的由来。

03 RS232

有了UART这个东西之后是不是就可以直接在设备之间用了呢?如果是在一块板子上这里没有太大问题。现在大多数芯片的输出电压都是TTL的,所以电平兼容,而且一块板子上干扰又不会太高。但要是用在设备与设备之间通信,那可能就会有问题了。比如说主控电脑和电机驱动器之间。这种情况下TTL的抗噪能力就比较单薄了。比较简单的做法就是增加逻辑1和逻辑0之间的电压差,比如像RS232这种接口中定义的电平格式(逻辑1:-5~-15V,逻辑0:+5~+15V)。还有用差分信号的方式,比如RS485。没错,RS232只是一种接口,定义了接口的外观、各个引脚的功能、信号0和1对应的电压等。所以平时使用UART的时候要注意接口的电压是TTL的还是RS232的。如果两个设备的逻辑电平定义不一样就得加个转换口。类似下图。

544ad0bc9cbec603e2e21295f8d25805.png
图片来自互联网

有了上面介绍的这些东西,我们好像就可以开始设计我们自己的串口通信电路了。什么iUART, UARTplus, USRT等等等,仿佛商机就在眼前。但让人可惜或者高兴的是市场上有太多现成的产品可以用了,像USB, SPI, I2C, CAN等一系列基于串行通信这个想法发展起来的协议,其协议本身和周边配套的硬件和软件驱动都已经很成熟了。所以我们只要了解下不同协议的特性,在不同的应用场景选择相应的产品就可以了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值