打印
[PIC®/AVR®/dsPIC®产品]

串口、COM口、UART口, TTL、RS-232、RS-485区别详解(转载)

[复制链接]
24804|32
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
一、概述
        1、串口=COM口(cluster communication port ,串行通讯端口),是指的物理接口形式(硬件)。而TTL、RS-232、RS-485是指的电平标准(电信号)。

        2、接设备的时候,一般只接GND RX TX。不会接Vcc或者+3.3v的电源线,避免与目标设备上的供电冲突。

        3、PL2303、CP2102芯片是 USB 转 TTL串口 的芯片,用USB来扩展串口(TTL电平)。

        4、MAX232芯片是 TTL电平与RS232电平的专用双向转换芯片,可以TTL转RS-232,也可以RS-232转TTL。

        5、TTL标准是低电平为0,高电平为1(+5V电平)。RS-232标准是正电平为0,负电平为1(±15V电平)。

        6、RS-485与RS-232类似,但是采用差分信号负逻辑。

        7、RS232串口,就是指采用了232电平协议的DB9针接口

        8、从某种意义上,可以说线路上存在的仅仅是电流,而RS232/RS485规定了这些电流在什么样的线路上流动和流动的样式;在UART那里,电流才被解释和组装成数据,并变成CPU可直接读写的形式。

1、串口、COM口解释:
COM口即串行通讯端口(cluster communication port ),简称串口。特指台式计算机或一些电子设备上的D-SUB外形(一种连接器结构,VGA接口的连接器也是D-SUB)的串行通信口,应用了串口通信时序和RS232的逻辑电平。

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

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

2、实物照片及解释
这是常见的4针串口,在电路板上常见,经常上边还带有杜邦插针。还有时候有第五根针,3.3V电源端。由于是预留在电路板上的,协议可以有很多种,要看具体设备。

下面这个就是D型9针串口(通俗说法)。在台式电脑后边都可以看到。记住,这种接口的协议只有两种:RS-232和RS-485。不会是TTL电平的(除非特殊应用)。我们一般只接出RXD TXD两针,外加GND。

下图是个USB转TTL串口的小板,可以用USB扩展出一个串口。芯片为PL2303HX。

网上经常混淆各种串口,但是这个确实是可以给STC单片机下载程序的。(单片机的引脚就是TTL电平)


这是另一种,CP2102芯片的,也是USB转TTL串口。据说比PL2303的好,实际使用中没感觉出来。这个小板就多了+3.3V电源端,以适应不同的目标电路。

上边介绍的都是USB转TTL串口,如果目标设备上是RS-232串口(D型9针接口)咋弄?

再接一片MAX232转换一下就行。

RS-232转TTL咋弄?这就需要你动点脑子咯。当然,早有人想到了做一款成品。仔细看下图,USB经过PL2303转成了TTL串口,中间四个窟窿可以引出,再经MAX232转换为RS-232电平,9针串口引出。

或者这种也不错  

下面这是另一款:电平转换依旧用的是MAX232。

只要是D型9针串口,不会是TTL电平的,没特殊说明就默认是RS-232。


想要强调的是,一个设备的串口可以根据引出的串口线来判断是TTL还是RS-232,从而决定链接方式以及是否需要转换电路。


二、TTL、RS-232、RS-485的电平形式

如下图所示两台设备需要通信,就需要建立连接,采用什么样的方式,用什么样的逻辑传输信息十分重要。因此需要引入这里面的各种概念,其实都是一个事务的发展顺序问题。这里要明确一个概念,就是常说的RS232串口,就是指采用了232电平协议的DB9针接口


TTL、RS232、RS485都是一种逻辑电平的表示方式


1、TTL介绍

TTL:TTL指双极型三极管逻辑电路(transistor transistor logic),市面上很多"USB转TTL"模块,实际上是"USB转TTL电平的串口"模块。这种信号0对应0V,1对应3.3V或5V。与单片机、SOC的IO电平兼容。不过实际也不一定是TTL电平,因为现在大部分数字逻辑都是CMOS工艺做的,只是沿用了TTL的说法。我们进行串口通信的时候 从单片机直接出来的基本是都是 TTL 电平。  


TTL电平:全双工(逻辑1:2.4V ~ 5V,逻辑0:0V ~ 0.5V)


1、硬件框架图如下,TTL用于两个MCU之间通信

2、0和1表示

2、RS232介绍

RS232:是电子工业协会制定的异步传输标准接口,同时对应着电平标准和通信协议(时序),其电平标准:+3V ~ +15V对应0,-3V ~ -15V对应1。RS232的逻辑电平和TTL不一样但是协议一样。


RS-232电平:全双工(逻辑1:-15V ~ -3V,逻辑0:+3V ~ +15V)


1、硬件框图如下

2、0和1表示

3、RS485介绍


RS485:RS485是一种串口接口标准,为了长距离传输采用差分方式传输,传输的是差分信号,抗干扰能力比RS232强很多。两线压差为-(2~6)V表示0,两线压差为+(2~6)V表示1。


RS-485电平:半双工、(逻辑1:+2V ~ +6V,逻辑0:-6V ~ -2V)这里的电平指AB两线间的电压差。


1、硬件框图如下:

2、0和1表示

三、串口补充解释

COM口即串行通讯端口,简称串口。这里区别于USB的"通用串行总线"和硬盘的"SATA"。


一般我们见到的是两种物理标准。D型9针插头,和4针杜邦头两种。这是常见的4针串口,在电路板上常见,经常上边还带有杜邦插针,有时候还会有第五根针,3.3V电源端。由于是预留在电路板上的,协议可以有很多种,要看具体设备。


时候还会有第五根针,3.3V电源端。由于是预留在电路板上的,协议可以有很多种,要看具体设备。

在嵌入式里面说的串口,一般是指UART口,但是我们经常搞不清楚它和COM口的区别,以及RS232、TTL等关系,实际上UART、COM指的是物理接口形式(硬件),而TTL、RS-232是指的电平标准(电信号)。


UART有4个pin(VCC、GND、RX、TX),用的是TTL电平,低电平为0(0V),高电平为1(3.3V或以上)。

D型9针串口,这种接口的协议只有两种:RS-232和RS-485。不会是TTL电平的。一般只接出RXD、TXD,外加GND。


接设备的时候,一般只接GND、RXD、TXD。不会接Vcc或者+3.3V的电源线,避免与目标设备上的供电冲突。GND给收发双方提供参考电平。TXD和RXD数据线以bit为最小单位传输数据,一帧包含:起始位、数据位、校验位、停止位。


PL2303、CP2102芯片是USB转TTL串口的芯片,用USB来扩展串口(TTL电平)。USB转TTL串口如下图:

MAX232芯片是TTL电平与RS232电平的专用双向转换芯片,可以TTL转RS-232,也可以RS-232转TTL。如下图:

UART是通用异步收发传输器,它是完成一个特定的功能的硬件,它本身不是协议。它的最基本功能,是串行数据和并行数据之间的转换。计算机中的数据以Byte为基本单位,对一个Byte的存取是并行的,即同时取得/写入8个bit。而串行通信,则需要将这个Byte"打碎",按照时间顺序来收发以实现串行。它是设备间进行异步通信的关键模块,UART负责处理数据总线和串行口之间的串/并、并/串转换,并规定了帧格式;通信双方只要采用相同的帧格式和波特率,就能在未共享时钟信号的情况下,仅用两根信号线(Rx 和Tx)就可以完成通信过程,因此也称为异步串行通信。


例如:


内存中的数据是:11100101


串行发送的实际效果是:1->0->1->0->0->1->1->1


接收则是:1->1->1->0->0->1->0->1


RS232/RS485是两种不同的电气协议,也就是说是对电气特性以及物理特性的规定,作用于数据的传输通路上,它并不内含对数据的处理方式。


比如RS232使用3v ~ 15v有效电平,而UART,因为对电气特性并没有规定,所以直接使用CPU使用的电平,就是所谓的TTL电平(0~3.3V之间)。更具体的,电气的特性也决定了线路的连接方式,比如RS232,规定用电平表示数据,因此线路就是单线路的,用两根线才能达到全双工的目的。而RS485, 使用差分电平表示数据,因此必须用两根线才能达到传输数据的基本要求,要实现全双工必需用4根线。但是,无论使用RS232还是RS485,它们与UART都是相对独立的,但是由于电气特性的差别,必须要有专用的器件和UART接驳,才能完成数据在线路和UART之间的正常流动。


总结:从某种意义上,可以说线路上存在的仅仅是电流,而RS232/RS485规定了这些电流在什么样的线路上流动和流动的样式;在UART那里,电流才被解释和组装成数据,并变成CPU可直接读写的形式。


RS-232与RS-485的区别

传输方式不同。RS-232采取不平衡传输方式,即所谓单端通讯。而RS485则采用平衡传输,即差分传输方式。


传输距离不同。RS-232适合本地设备之间的通信,传输距离一般不超过20m。而RS-485的传输距离为几十米到上千米。


能否支持多点通讯。RS-232只允许一对一通信,而RS-485接口在总线上是允许连接多达128个收发器。


接口的物理结构方面:

RS-232接口连接器使用型号为DB-25的25芯插头座。一些设备与PC机连接的RS-232接口,因为不使用对方的传送控制信号,只需三条接口线,即RXD、TXD、GND,所以采用DB-9的9芯插头座,传输线采用屏蔽双绞线。


RS-485无具体的物理形状,根据工程的实际情况而采用的接口。


接口电气方面:

RS-232传输电平信号接口的信号电平值较高,易损坏接口电路的芯片,又因为与TTL 电平不兼容故需使用电平转换电路方能与TTL电路连接。抗干扰能力差。


RS-485传输差分信号逻辑1以两线间的电压差为+(2-6)V表示;逻辑0以两线间的电压差为-(2-6)V表示。接口信号电平比RS-232降低了,不易损坏接口电路的芯片,且该电平与TTL电平兼容,可方便与TTL 电路连接。抗干扰能力。


通讯线的区别:

RS-232可以采用三芯双绞线、三芯屏蔽线等。


RS-485可以采用两芯双绞线、两芯屏蔽线等。


传输数据的最大波特率:

RS-232传输效率较低,最高波特率为19200bps。虽然传输速度很慢,但在很多场合还是很实用的。可以连接各种设备,例如监控、其它的设备升级或调试等都可能需要用到它。功能与USB比较接近,随着USB端口的越来越普遍,将会出现更多的把USB转换成RS-232或其它接口的转换装置。通过USB接口可连接更多的RS-232设备,不仅可获得更高的传输速度,实现真正的即插即用,同时解决了USB接口不能远距离传输的缺点。


RS-485的数据最高传输速率为10Mbps。


单工、半双工和全双工的区别:

单工:数据只能在一个方向上传输,不能实现双方通信。如电视、广播


半双工:允许数据在两个方向上传输,但是同一时间数据只能在一个方向上传输,其实际上是切换的单工。如对讲机


全双工:允许数据在两个方向上同时传输。如手机通话

原文链接:https://blog.csdn.net/qq_38842795/article/details/123963479




使用特权

评论回复
沙发
软核硬核| | 2022-10-12 21:01 | 只看该作者
这分析的挺好的,比较常用的接口也就是这些了。

使用特权

评论回复
板凳
AdaMaYun| | 2022-10-13 08:42 | 只看该作者
讲解的很详细,现在这些通讯都有单独的控制通信芯片,电路搭建也非常方便

使用特权

评论回复
地板
source03| | 2022-10-29 10:28 | 只看该作者
是要掌握基本的知识

使用特权

评论回复
5
tpgf| | 2022-11-1 14:55 | 只看该作者
COM口( cluster communication port )即串行通讯端口,简称串口。微机上的串口通常是9针,也有25针的接口,最大速率115200bps。通常用于连接鼠标(串口)及通讯设备(如连接外置式调制解调器进行数据通讯或一些工厂的数控机接口)等。一般主板外部只有一个串口,机箱后面和并口一起的那个九孔输出端(梯形),就是COM1口,COM2口一般要从主板上插针引出。并口是最长的那个梯形口。

但目前主流的主板一般都只带1个串口,甚至不带,慢慢会被USB 取代。

使用特权

评论回复
6
nawu| | 2022-11-1 15:11 | 只看该作者
为什么现在很多工控机的usb口越来越多而com口越来越少了呢

使用特权

评论回复
7
aoyi| | 2022-11-1 15:26 | 只看该作者
串口通讯的数据吞吐量远远不如usb接口  

使用特权

评论回复
8
zljiu| | 2022-11-1 15:54 | 只看该作者
为什么有源的转换器要比无源的转换器运行稳定呢

使用特权

评论回复
9
gwsan| | 2022-11-1 16:40 | 只看该作者
为什么usb运行不稳定呢 是因为速度快的原因吗

使用特权

评论回复
10
tfqi| | 2022-11-1 16:50 | 只看该作者
与串行端口相比,USB端口具有以下一些优点:

1.速度

USB端口比串行COM端口具有的主要优点是它们可以传输数据的速度。 传统的串行端口能够 到1Mbps 10 Mbps的,而USB C型可以在高达10,000的速度传输数据Mbps的 (高达1000倍增加速度)。 也就是说,并非所有设备都具有USB Type C ; 某些设备仍在使用USB Gen 1,Gen 2 或 Gen 3。

USB能够传送数据的在 速度 高达的 12 Mbps的,这仍然比串行端口快得多,和USB的Gen 2是能够 在高达480 Mbps的速度传输数据。 USB 3.0 ,通常称为USB SS (超高速), 能够以高达5,000 Mbps的速度传输数据。

USB 3. 1 Gen 1 保持与USB 3.0相同的数据传输速度,而USB 3.1 Gen 2将数据传输速度 从5,000 Mbps增加到10,000 Mbps。 也就是说, 过去被称为USB 3.0的USB 3.2 Gen 1提供高达5,000 Mbps的传输速度,而USB 3.2 Gen 2 在USB Type - A和USB Type C标准下提供高达10,000 Mbps的数据传输速度 (2x USB 3.0 和USB 3.2 Gen 1的速率)。

另外,重要的是要提到, 所有USB Type - A 代都与刻槽交叉兼容。 例如,如果您将USB 3.0外围设备或闪存驱动器插入USB 2.0端口,则可以正常工作; 但是,你会被限制 USB 2.0端口的速度。 之所以如此,是因为即使它们兼容,您也会受到USB 2.0端口中使用的USB 2.0技术的限制。

归根结底,USB端口 已 成为消费级用途和工业应用的标准端口, 因为需要提供带宽增加的通信端口。例如,机器视觉相机和指纹读取器无法使用旧版串行端口。

之所以如此,是因为它们要求的带宽 超过 了串行端口提供的带宽。 因此,工业计算机可以同时配置USB和串行COM端口,以与传统技术和新技术进行通信。 传统串行端口可用于连接到较旧的自动化设备或传感器,而高分辨率设备等现代设备可通过USB端口进行连接。

2.力量

USB端口相对于串行端口具有的第二个优点是,它们 能够 通过USB供电,而串行端口不能够供电。也就是说, USB 1.1和USB 2.0 可以 通过USB在5伏电压下提供高达500mA的电流,而USB 3.0和USB 3.1 Gen 2可以 通过USB端口在5V电压下提供高达900mA的电流 ,从而使用户能够快速充电和充电。无需外部电源即可为设备供电。

此外,USB端口为连接的设备配备了电源管理功能,该功能使系统可以使当前未使用的设备进入睡眠状态,以节省电源。 此功能还 可以在需要设备时立即唤醒设备,从而降低了系统的总体功耗。

3.耐用性

USB端口比串行端口耐用得多,因为USB消除了串行端口使用的易损引脚。串行端口中的微小引脚非常容易弯曲或折断,而USB引脚则更坚固且更难损坏。

使用特权

评论回复
11
Jacquetry| | 2022-11-4 20:30 | 只看该作者
为什么usb运行不稳定呢?

使用特权

评论回复
12
syh2431| | 2022-11-20 20:50 | 只看该作者
挺不错

使用特权

评论回复
13
纳西瑟斯| | 2023-3-1 13:10 | 只看该作者
DSP28335的中,不论是485还是422,只是硬件电平不同,对于软件都只是配置SCI吗?还需要别的配置吗?

使用特权

评论回复
14
janewood| | 2023-3-2 11:54 | 只看该作者
就是 一般 单片机的 串口,是 TTL 电平

使用特权

评论回复
15
usysm| | 2023-3-2 11:57 | 只看该作者
UART,COM指的物理接口形式(硬件), 而TTL、RS-232是指的电平标准(电信号)。

使用特权

评论回复
16
1988020566| | 2023-3-2 12:01 | 只看该作者
rs-485接口的最大传输距离标准值为4000英尺,实际上可达3000米,另外rs-232接口在总线上只允许连接1个收发器,即单站能力。

使用特权

评论回复
17
gygp| | 2023-3-3 21:42 | 只看该作者
讲讲关于RS232与485的共性特征

使用特权

评论回复
18
mikewalpole| | 2023-3-3 21:50 | 只看该作者
RS-232采取不平衡传输方式,即所谓单端通讯.而RS485则采用平衡传输,即差分传输方式。

使用特权

评论回复
19
minzisc| | 2023-3-4 19:44 | 只看该作者
UART包含TTL电平的串口和RS232电平的串口。 TTL电平是3.3V的,而RS232是负逻辑电平

使用特权

评论回复
20
uptown| | 2023-3-4 19:58 | 只看该作者
wireless模块接口用来连接哪个模块

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

57

主题

89

帖子

0

粉丝