首先需要区分时序标准和逻辑电平标准是什么?

时序标准指的是和实际电压的逻辑值(0和1)在时间轴上的标准,简单讲,时序标准规定了逻辑信号的格式,什么时候该收或发1?什么时候该收或发0?

逻辑电平标准指的是物理量和逻辑值之间的关系,具体物理量可以是电压、电流等,最常见的是电压。逻辑电平标准规定了多少电压代表0,多少电压代表1等等信息,是连接物理量和逻辑值之间的桥梁。

然后我们来了解它们的概念:

扩展阅读:串口、COM口、UART、TTL、USB、RS-232、RS-485、I2C、SPI、CAN、1-WIRE

RS232

是电子工业协会(Electronic Industries Association,EIA) 所制定的异步传输标准接口(from 百度),同时对应着电平标准和通信协议(时序),其电平标准 3V~ 15V表示0,-3V~-15V表1。

以太网和标准rs232串口通讯(RS232RS485UART)(1)

RS485

也是一种串口接口标准,时序是一样的,不过逻辑电平标准不同。为了长距离传输采用差分方式传输,抗干扰能力很强。

UART

通用异步收发器(Universal Asynchronous Receiver/Transmitter)。可以说UART不是接口,而是实现串口收发的逻辑电路,这部分可以独立成芯片,也可以作为模块嵌入到其他芯片里,单片机、SOC、PC里都会有UART模块。

以太网和标准rs232串口通讯(RS232RS485UART)(2)

串口

可以算是一个泛称,一般指代的是串口时序标准。UART、RS232、RS485、TTL都遵循着类似的通信时序协议,因此都被通称为串口。

COM

特指台式计算机或一些电子设备上的D-SUB外形(一种连接器结构,VGA接口的连接器也是D-SUB)的串行通信口,应用了串口通信时序和RS232的逻辑电平(下边详细讲)。

USB

通用串行总线,普遍使用的一种接口,和串口完全是两个概念。虽然也是串行方式通信,但由于USB的通信时序和逻辑电平标准都和串口完全不同,因此和串口没有任何关系。USB是高速的通信接口,用于PC连接各种外设,U盘、键鼠、移动硬盘、当然也包括“USB转串口”的模块(USB转串口模块,就是USB接口的UART模块)。

TTL

TTL指双极型三极管逻辑电路,也可以指一种电平规范(类似的还有CMOS电平等)。淘宝上很多“USB转TTL”模块,实际上是“USB转TTL电平的串口模块”。这种信号0对应0V,1对应3.3V或者5V。与单片机、SOC的IO电平兼容。不过实际也不一定是TTL电平,因为现在大部分数字逻辑都是CMOS工艺做的,只是沿用了TTL的说法。

它们之间的关系总而言之就是:

USB是一种高速通信接口,和串口无关。

串口是泛指,指代所有采用串口通信时序的接口。

TTL不是正规名称,只不过在某些情况下约定俗成的一种串口标准(电平标准,通信时序都是串口)

RS232、RS485都是串口标准。不同的串口标准虽然电平标准不一定相同,但通信时序协议都是大致相同的。

UART指的是实现UART通信的数字逻辑电路。

一、串口

1、串口概述

串行接口简称为串口,也叫串行通信接口,一般也叫COM口,这是一个统称,采用串行通信的接口都叫作串口,串口是一个硬件接口。

2、公头和母头

有公头和母头之分,大家可以自行记忆,左边有孔的为母头,另外一个就为公头。

以太网和标准rs232串口通讯(RS232RS485UART)(3)

公头和母头

3、串行和并行

 串行:计算机总线或其他数据通道上,每次传输一个位元数据,并连续进行以上单次过程的通信方式。

并行:在串行端口上通过一次同时传输若干位元数据的方式进行通信,所以并行的速度比串行快。

以太网和标准rs232串口通讯(RS232RS485UART)(4)

串行和并行

二、UART

 UART是Universal Asynchronous Receiver/Transmitter的简称,意为通用异步收发传输器,UART包含TTL电平的串口和RS-232电平的串口,使用UART通信的双方设备都需要遵从UART协议。

三、TTL电平

1、TTL概述

 TTL是Transistor-Transistor Logic的简写,是一种电平逻辑,晶体管-晶体管逻辑。

2、标准TTL电平逻辑

逻辑1代表高电平,连接到电源VCC,逻辑0为低电平,连接到电源地。

TTL有电压范围,分为输出高、低电平和输入高、低电平,输出高电平用表示,输出低电平用表示;输入高电平用表示,输入低电平用表示。

对TTL电平的器件来说,当输入电压高于2V时,才会被识别为逻辑1,输入的低电平低于1.2V时,才会被识别为0,这是为什么输出高电平2.4V,高于2V;输出低电平0.8V,低于1.2V的原因所在。如下是标准TTL电平,TTL有很多类型,电压有所区别。

3、USB转TTL

玩过51单片机的小伙伴都用过CH340G模块,用来下载HEX文件,这个模块的作用就是将USB转成TTL电平,一般单片机的电平都是TTL电平,模块的内部芯片是CH340T,ST官方推荐。

以太网和标准rs232串口通讯(RS232RS485UART)(5)

USB转TTL模块

使用CH340T芯片,USB转TTL电平的电路原理图。

以太网和标准rs232串口通讯(RS232RS485UART)(6)

USB转TTL原理图

4、与单片机连接

 TTL电平的器件之间通信,只需要三根信号线:TXD、RXD和GND,和单片机接法很简单,3.3V单片机就接3.3V,5V单片机就接5V,如果单片机有单独的供电,3.3V和5V都不接。

以太网和标准rs232串口通讯(RS232RS485UART)(7)

USB转TTL模块与单片机的连接

四、USB

1、USB概述

USB是Universal Serial Bus(通用串行总线)的缩写,是一个外部总线标准,用于规范电脑与外部设备的连接和通讯,是应用在PC领域的接口技术,特点是传输速度快,支持热插拔,可连接多个设备。

我们在很多地方可以看到USB的身影,鼠标,键盘,手机充电器,现在几乎所有的电子充电设备都是USB接口,如下是各个USB的物理接口。

以太网和标准rs232串口通讯(RS232RS485UART)(8)

USB接口分类

2、USB速率

3、USB接口定义

最常见的的Type-A型USB接口定义如下。

Pin#Name颜色1VBUS/ 5V红色2D-/Data-/DM白色3D /Data /DP绿色4GND黑色

以太网和标准rs232串口通讯(RS232RS485UART)(9)

Type-A型接口

五、RS-232

1、RS-232概述

 RS-232接口符合美国电子工业联盟(EIA)制定的串行数据通信的接口标准,原始编号全称是EIA-RS-232(简称232,RS232)。它被广泛用于计算机串行接口外设连接,连接电缆和机械、电气特性、信号功能及传送过程。

2、RS-232电平逻辑

RS-232不同于TTL的电平逻辑,为负逻辑,负12V代表高电平逻辑1,正12V代表低电平逻辑0,电压也有标准范围。

除了TTL和RS232,常见的还有一个CMOS电平标准,电压范围如下:

3、DB9接口定义

 下图是DB9公头和母头的定义,一般用的最多的是RXD、TXD、GND,三个信号。

以太网和标准rs232串口通讯(RS232RS485UART)(10)

DB9公头和母头接口信号定义

工业场合还会用到DB-25的RS232,DB9和DB25接口可以转换。

以太网和标准rs232串口通讯(RS232RS485UART)(11)

DB9转DB25

4、USB转RS-232

USB转232,可以先将USB转换为TTL,再将TTL转换为RS232,当然市面上也有很多USB直接转RS232的线材,线材内部集成转换电路,淘宝上某USB转RS232用的两个芯片是FT232和SP213。

以太网和标准rs232串口通讯(RS232RS485UART)(12)

USB转RS232线材

5、TTL和RS-232互转

单片机接口一般是TTL电平,如果接232电平的外设,就需要加TTL转RS232的模块,转换方向是双向的。

TTL和RS232电平互相转换最常用的芯片是MAX232和SP3232。

以太网和标准rs232串口通讯(RS232RS485UART)(13)

TTL和RS-232转换模块

六、RS-485

1、RS-485概述

RS-485和RS-232一样,都是串行通信标准,现在的标准名称是TIA/EIA-485-A,习惯称为RS-485标准,RS-485弥补了RS-232通信距离短,速率低的缺点。

RS-485和RS-232单端传输不一样,是差分传输,使用一对双绞线,其中一根线定义为A,另一个定义为B。

2、RS-485电平逻辑

RS-485是差分传输,一般收发器内部是一个发送器加一个收发器组成。下图是收发器典型的功能框图。

对于使能信号,字母上面加一横的为低电平有效,不加的为高电平有效。

以太网和标准rs232串口通讯(RS232RS485UART)(14)

  RS-485内部结构

对于发送器,有如下的真值表:

以太网和标准rs232串口通讯(RS232RS485UART)(15)

RS-485发送器真值表

对于接收器,有如下的真值表:

以太网和标准rs232串口通讯(RS232RS485UART)(16)

RS-485接受器真值表

RS-485电平逻辑说明

很多收发器的标准达到甚至超过TIA/EIA-485A规范,在实际使用中,以器件的SPEC参数为主。

以太网和标准rs232串口通讯(RS232RS485UART)(17)

3、TTL和RS-485转换

 TTL转成RS-485很常见,收发器芯片市面上很多,比如MAX485,用起来也很简单,一般左边接MCU的GPIO,用来控制。

以太网和标准rs232串口通讯(RS232RS485UART)(18)

TTL转RS-485

4、RS-232和RS-485转换

RS-232和RS-485之间可以转换,一个方法是RS-232转换成TTL,再由TTL转换为RS-485,当然也有芯片支持将RS-232支持转换成RS-485,双向转换。

以太网和标准rs232串口通讯(RS232RS485UART)(19)

RS-232和RS-485转换模块

七、IIC

1、IIC概述

IIC总线是由Philips公司开发的一种简单、双向二线制同步串行总线,IIC只需要两根线进行通信,SDA(串行数据线)和SCL(串行时钟线)

下图是I2C总线的典型结构,同一时刻可以单主机多从机或单主机单从机,I2C总线上的任意设备都可以当主机,一般主机是MCU,当有多个主机时,会通过总线仲裁的方式选出一个主机,其他退出作从机。

以太网和标准rs232串口通讯(RS232RS485UART)(20)

IIC总线架构

2、IIC速率

八、SPI

1、SPI概述

SPI是串行外设接口(Serial Peripheral Interface)的缩写,是一种高速的,全双工,同步的通信总线,SPI的速率比I2C高,一般可以到几十Mbps,不同的器件当主机和当作从机的速率一般不同。

2、SPI信号线

3、SPI典型应用

SPI最典型的应用是单主机单从机,下图是接线方式,当然也可以多从机。

以太网和标准rs232串口通讯(RS232RS485UART)(21)

SPI单主机单从机连接方式

九、CAN

1、CAN概述

 CAN是Controller Area Network的简称,是一种有效支持分布式控制或实时控制的串行通信网络,现在是汽车网络的标准协议。

2、CAN电平逻辑

电平逻辑总线Value显性电平0CAN_H=3.5V,CAN_L=1.5V隐性电平1CAN_H=2.5V,CAN_L=2.5V

十、1-WIRE

1、1-WIRE概述

单总线是美国DALLAS公司推出的外围串行扩展总线技术,与SPI、I2C串行数据通信方式不同,它采用单根信号线,既传输时钟又传输数据,而且数据传输是双向的。

2、1-WIRE典型框图

如下是1-WIRE的典型框图,可以看到微处理器和1-WIRE器件之间只有一根线。

以太网和标准rs232串口通讯(RS232RS485UART)(22)

1-WIRE结构图

END

,