概述
可能很多人还都不太了解TTL、RS232、485,下面就简单概述一下它们分别是什么。
1、TTL电平
TTL:Transistor Transistor Logic,晶体管-晶体管逻辑电平。
比如,0V代表逻辑低电平,5V代表逻辑高电平。像STM32单片机串口引脚输出的逻辑高电平就是3.3V。
你可能会问:什么是逻辑电平?
逻辑电平是特定电压或可以存在信号的状态,通常为“0/1”、“开/关”、“ON/OFF”或“LOW/HIGH”等。
随着电子技术的快速发展,逻辑高电平的电压也是越来越低,比如DDR5内存的供电电压才1.1V。
2、RS232
RS232,也简称232,全称EIA-RS-232。
RS232有多个版本,比如RS232A、RS232B、RS232C……F等,目前常用的是RS-232C。
RS232最初是用于调制解调器,因此它的引脚定义和调制解调器传输有关。
RS232早期使用25针连接器(DB25)比较多,早期打印机、传真机这些设备用的比较多,现在很少用了。
可能很多人都没有见到过,我读大学那会儿给MSP430下载程序就是用的这种DB25接口。
现在通常是DB9,相信大家都不陌生,但我们大部分时候只用到了2、3、5脚。
DB9在很多电脑后面板上都还保留有,即便后面板没有,在主板上也留有DB9接口(前不久我配电脑,还特意买了一个DB9外接接口)。
3、RS485
RS485可以说是在RS232的基础上发展而来的,目的是为了“增加抗干扰能力和信号传输距离”。
RS232采用电压来代表逻辑高低电平,比如±15电压。
而RS485采用差分电压,也就是两根信号线(A、B)上的电压差来代表逻辑高低电平。
RS232支持全双工通信,而RS485是半双工通信。
传输距离
在大学的时候,可能老师会告诉你:RS22传输距离为15米。或者,你在某些书籍上看到RS485传输距离为1200米。
通信传输距离与很多因素有关,实际和理论还是有很大差异,在某些情况下,RS485传输500米可能都有问题。
通信传输距离与通讯方式、波特率、连接线、干扰等众多因素有关,这里结合串口(UART)通信来简单说下这几个问题。
1、通讯方式
这里说的通讯方式,指的就是标题中“TTL、RS232、485”等不同的通讯方式。
正常情况下,通讯距离:TTL < RS232 < 485。
TTL通常在板卡内部(同一块板卡),比如芯片A的串口,和芯片B的串口通信。
RS232在很多场合都还能用到,通常设备与设备之间通信,一般是DB9或两根信号线连接(之前参与的一个项目,用电脑PCI卡扩展出了8个串口,就是用的232方式)。
RS485在工业产品中用的比较多,可以多个设备连接在485总线上,还有传输距离更远、抗干扰性更强。
2、波特率
波特率,1波特即指每秒传输1个符号。波特(Baud,单位符号:Bd)
你可以理解为传输信号的快慢,比如串口9600bps。
波特率越高,频率就越高,同等条件下,传输的距离就更短。
串口的波特率可以做到很高,比如115200bps,但以这种波特率通过RS232传输,可能传输10米就存在问题。
3、连接线
连接线也是一个关键因素,连接线材料(铜、铝、铁)、粗细、是否带有屏蔽等都会影响传输信号的距离。
可能干净的环境(比如实验室、办公室)都还看不出差异,你在复杂的点环境(比如工厂,特别是大型机械设备比价多的环境下)就能感受出差异了。
所以,RS458使用差分信号,双绞线,好点的带有屏蔽的线,在工业环境就显优势了。
4、干扰因素
做过工业产品的人都知道,不但EMC要求高,对于通信的要求也高。
旁边一个台大型设备突然启动,很久可能让你的通信失败(或者芯片复位、死机等)。
你不要485能传输1200米,可能工厂内200米通信都还会失败。
综上,要增加传输距离、又要保证传输信号的稳定,通常要做到尽量远离干扰源(大型机械设备)、增加屏蔽措施、降低传输速率(波特率)等。
声明:本文转载自strongerHuang 公众号,如涉及作品内容、版权和其它问题,请于联系工作人员,我们将在第一时间和您对接删除处理!