当前位置:首页 > 公众号精选 > 南山扫地僧

来自:达尔文说

这里有三个串口通信的信号图,你能看出来是什么串口通信吗?如果区分不出来,这篇文章一定要认真学习!

关于串口通信,很多刚入行的工程师有很多疑问,比如什么是串口通信;平时常用的有哪些,他们之间有什么区别。下面就通过这篇文章,给大家讲清楚:

01

什么是串口通信

串口通信是使用串口通讯协议方式的通信统称。在通信时,将数据按位(bit)顺序传输,每位数据占据固定的时间长度,仅用一根接收线和一根发送线即可实现。

通信的双方需要互相约定好两个重要的内容:

1)传输的速度,每秒钟传送的二进制位数,即波特率,例如标准的9600波特率就是每秒传送9600个二进制位。

2)数据格式,一组有效的数据包含哪些内容,一般从起始位开始,中间有数据位、校验位,然后在停止位结束。其中数据位可以是5,6,7或者8位;校验位是用于检查数据传输的准确性,常见的有奇偶校验,或偶校验,或无校验位;停止位是在每个字符传输结束时发送的一个位。通常情况下,停止位为1位或2位。

串口传输数据格式

在数字电路中,只认0和1 ,在一根数据线上怎么确定传输的内容是什么呢?这就需要把数据线上的电平转换成对应的0或1。不同的串口通常按照协议标准,会把不同的电压区间划分成高低电平,比如高于2.4V的高电平认为是1,低于1.2V的低电平认为是0。

TTL电平转换标准

02

常见的串口通信如何选择?

设备内部或板间通信——TTL串口

TTL串口是指通过TTL电平进行串口通信的一种方式。TTL是一种电平标准,规定:

输出:小于0.8V是低电平,为逻辑0;大于2.4V是高电平,为逻辑1;

输入:小于1.2V是低电平,为逻辑0;大于2V是高电平,为逻辑1;

在各种单片机MCU或者处理器中,TTL串口是标配,因为TTL电平信号可直接与集成电路连接而不需要额外的转换器,而且设备内部的数据传输一般要有比较高的传输速度,TTL接口的操作恰能满足这个要求。

TTL串口通常只需要三根数据线:接收Rx、发送Tx、接地GND。通信的双方可以同时发送和接收数据。

在实际使用中,通过电平转换芯片,与PC或其他设备通信,比如通过CH340G芯片。

TTL电平的电压范围比较小,一般在0-5V之间。当传输距离比较长的时候,外界的干扰容易导致电平突变,接收数据出现异常,所以TTL串口传输距离很短,一般在1米以内,最常见的就是板级通信。

15米以内的通信——RS232

当设备之间的通信距离在15米左右时,正如上面所说,TTL串口由于电平比较低,但线路任何变化,都有可能引起干扰,导致接收不到正确的电平信号,因此需要一个逻辑电平容差范围较大的通信,这就是RS232了。

RS232的通讯电平是这样定义的:电平-15V~-3V代表逻辑1;+3V~+15V代表逻辑0。如果电压值在-3V~3V之间,就无法辨别了。

集成电路芯片引脚输出的是TTL电平,如果使用RS232通信,就必须要使用专用的转换芯片,将TTL电平转换为RS232电平,具体的芯片电路如下:

经过转换芯片之后的RS232,就可以通过9针串行接口与外部进行通信了。

与TTL串口相比,RS232改变了逻辑电平大小,但传输的还是原来的那些0或者1的数据,也是双方可以同时通讯。

由于传输的距离增加到了10米,RS232的应用范围更广了,比如工业上的一些传感器和测量仪器使用RS232接口进行通信;智能门禁系统的读卡器和门禁控制器之间,可以使用RS232来连接;有些打印机同样通过RS232接口与计算机进行通信,实现数据传输。

1千米远距离通信——RS485

当远距离的通信时,电平容差很高的RS232也可能会遇到干扰,因此需要传输性能更强的串口通信,这就有了RS485。

与RS232和TTL用一根线传输信号不同,RS485采用的是一对差分双绞线,使用缆线两端的电压差值来确定逻辑电平1和0。这对双绞线缠绕在一起,如果有干扰,两根线是同时受到干扰,最后到达接收端的电压差值基本上保持不变,这样对传输的内容不受影响,因此RS485最远传输距离高达1200米。

RS485逻辑电平也有自己的标准:

对于发送端,两根线的电压差+(2~6)V,为逻辑1;电压差-(2~6)V,为逻辑0;

对于接收端,两根线的电压差+(0.2~6)V,为逻辑值1;电压差-(0.2~6)V,为逻辑0

RS485的这对双绞线,在同一时间只能同方向传输,这点与TTL和RS232是不同的。还有一点是RS485独有的,它可以进行多设备组网,实现1对多组网通信,而TTL和RS232只能1对1的简单通信。

设备间进行RS485通信时,也需要转换芯片,把芯片的TTL电平转换为RS485电平。

由于RS-485串口可以进行远距离传输距离、支持多点通信等优点,在工业控制、自动化控制、安防监控等领域,受到青睐。

03

总结串口通信类型

上面说的TTL串口、RS232、RS485,是从物理接口区分的。使用串口通讯协议方式的通信方式从其他维度,可以划分以下几种常见的类型,这这里给大家做个总结:

按基本类型分:

并行通信:数据的各位同时发送或接收,每位数据位使用一条数据线。这种方式速度快,但占用资源多,成本高。

串行通信:数据一位接一位地发送或接收。这种方式最少只需一根传输线即可完成,成本低,但相对于并行通信,传送速度慢。

按通信方向分:

单工通信:只允许一方向另外一方传送信息,而另一方不能回传信息,场景有电视遥控器、收音机广播等。

半双工通信:数据可以在双方之间相互传输,但同一时间只能一方发给另外一方,像对讲机就属于半双工。

全双工通信:双方发送数据的同时,也能够接收数据,同步进行,比如电话通信。

按通信方式分:

同步通信:需要使用一个时钟,以数据块为单位传送数据,例如SPI、IIC等。

异步通信:每个设备都有自己的时钟信号,双方波特率要保持一致,以字符为单位进行数据帧传送,一次传送一帧。例如UART(通用异步收发器)等。

正是串口通信的多样性,在很多领域中都占据重要的地位。比如在嵌入式系统中,单片机或者Arm开发板,通过串口可以与外部设备进行数据交换,实现各种功能;在工业现场中,控制器、传感器、执行器等,都需要通过串口进行通信,实时完成工业控制。

很多新入门的电子工程师在开始学习的时候,总是搞不清楚他们的差别。学习了我们这篇文章,可以充分了解串口的定义、分类,以及TTL、RS232、RS485三种最常见的特点、应用场合等。

最后,我们把TTL串口、RS232和RS485,根据逻辑电平标准、传输距离、速率、模式等多个维度,做了整理,希望可以帮助大家快速理解:

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除( 邮箱:macysun@21ic.com )。
关闭