UART、TTL、RS232等概念的区别与联系

浅谈UART,TTL,RS-232,RS-485的区别 以前常常听到串口,UART,RS232,RS485,TTL这几个名词,始终没去分清楚他们之间的区别。 阅读详情
AI摘要

本文深入解析UART、TTL、RS232等串行通信概念,阐述其在硬件开发中的应用,包括通信原理、接口标准及协议差异。

转载 UART、TTL、RS232等概念的区别与联系

通信里面的常见概念太多,例如UART、TTL、RS232、RS485、IIC、SPI、USB、RJ45等等,要想搞懂它们都是啥,对它们进行一个很好的分类是很重要的。在分类之前,我们需要先讲几个基本概念。

首先解释一下通信,对于有线通信来说,所谓通信就是在导线上传输电信号。有线通信主要分两种,串行和并行。常见的接口中,USB是串行,PCI是并行。它们的主要区别在于01数据是一次传一个还是一次传多个。

串行通信主要又分成两种,同步通信和异步通信。主要区别在于同步通信要利用时钟信号确定信息,而异步通信是通过约定传输速率并在将要传输的数据中增加冗余信息从而识别出信息的开始和结束位置。IIC(I²C)和SPI都属于同步通信,UART和USB属于异步通信,事实上UART就是Universal Asynchronous Receiver/Transmitter(通用异步收发传输器)的缩写。

本文主要讨论的是异步串行通信里的相关概念。在开始讨论之前,我还想说明一下,虽然通信就只是在导线上传输电信号,但它有几个关键点:

线材(是用铜还是其他金属?)及线材的组织方式(双绞线那样的还是同轴电缆那样的或者其他?)和两端接口的形状(例如同是8根线的Lightning和RJ45接口)。
一些电气特性,例如01怎么代表(用多大的电压?),怎么传输(管脚定义?是用单端信号还是差分信号?),即一些物理层面的协议。
传输的01信号是怎么代表有用的信息的,即软件层面的协议。
考虑了以上内容之后,我们就可以对标题中的概念进行解释了。

我们在讨论开发板上的串口时,常见的不外乎有UART、TTL、RS232这几个概念,其实很容易把它们说明白:

UART其实是一种软件层面的协议,定义了我们的信息要怎么组织封装成一串01序列。
TTL本身是指一种集成电路的设计工艺,而我们常说的TTL指的是TTL电路的电平标准,可以认为是一种物理层面的协议,但它只定义了表示01所使用的电压,没有定义怎么传输。通常有5V和3.3V两种。
RS232的内容多一些,物理层面的内容基本都定义了,具体可以查看wiki。RS232通常使用DE-9的D-sub接口,内部的数据通常采用UART协议。
类似地,再分析USB。USB这个概念比较庞大,不仅定义了接口形状和物理层面的协议,软件层面的协议也一并定义了。也可以说是USB把这些内容都纳入到了一个概念内。
所以,UART就是串口协议的一种,RS232是物理层的标准。所以说UART里只有01但没有电压这么一说。一般板子会把通过URAT协议组织好的01信号用TTL电平标准直接输出,这相当于一个原始的信号。之所以说它是个原始的信号是因为这里面是没有什么线材标准之说的,只定义了01相对应的电压大小,连接也是直接用导线连出来。不过,我们也可以处理一下这个信号,做成符合RS232接口标准的RS232接口进行输出。类似地,虽然UART最常用TTL和RS232,实际上还有其他很多接口仍在使用,做成这些接口也是可以的,例如传输差分信号的RS485,甚至是常用于以太网口的RJ45接口。

一个题外话,关于RS232目前常用的接口形状的名称究竟是DE-9还是DB-9的问题,wiki上有解释:

However, this naming pattern is not always followed. Because personal computers first used DB-25 connectors for their serial and parallel ports, when the PC serial port began to use 9-pin connectors, they were often labeled as DB-9 instead of DE-9 connectors, due to an ignorance of the fact that B represented a shell size. It is now common to see DE-9 connectors sold as DB-9 connectors. DB-9 nearly always refers to a 9-pin connector with an E size shell.

–https://en.wikipedia.org/wiki/D-subminiature

大意就是RS232最初用的是DB-25接口,后来PC上广泛使用9针接口来替代25针,一些人不知道DB-25中的B指的是接口外壳大小,把DB当成整体了,于是直接把25改成了9,认为它是DB-9。但实际上这个9针接口的外壳类型是E,是DE-9接口。因此现在所说的DB-9几乎指的都是DE-9。

再详细一点,举个例子,有个比较常见的说法:“这个开发板上的串口是TTL接口,我们可以用USB转TTL的转接头把它连到电脑上,比较常见的是使用PL2303芯片的转接头”。

我们来分析下这句话。“开发板上的串口是TTL接口”在本质上通常指的是开发板上引出的几个管脚,它使用TTL电压标准输出串行数据,协议通常是UART,相当于一种RAW信号。一个USB to TTL转接头的作用是把这个RAW的UART数据使用USB协议封装后传到PC上,可以理解成UART over USB。有些开发版上直接就有RS232接口,如果PC上也有RS232口,那就可以直接连接。其实如果PC有RS232的话,也可以用TTL to RS232转接头转换,常用的芯片是MAX3232。但这里面就只涉及到电压转换的问题了,没有数据的改变和封装,不像USB to TTL,还要借助USB协议。

当然,TTL输出的数据除了UART,也可以采用IIC、SPI等协议。但由于PC硬件上不自带支持,因此在PC上想使用这些协议就会比较麻烦,于是一般用的都是UART。

讲了这么多,最后还是要深入浅出一下。所以,一句话总结一下就是:不同层面的东西可以自由选取,因此可以选择采用不同的搭配方式;但有一些因为历史或者为了方便使用等等原因,形成了一些固定的搭配。只要我们理解了这一点,并对概念清晰地归类,就可以从更高的角度看待它们。

UART、TTL、RS-232、RS-485区别与联系 UART的核心功能包括数据的串并转换、起始位和停止位的添加与检测、奇偶校验的生成与验证(可选),以及波特率(比特率)的设定。总结来说,UART、TTL、RS-232、RS-485分别代表了串行通信中的协议规范、电平标准以及物理层特性,它们相互配合,在嵌入式开发、工业控制、自动化系统等领域有着广泛的应用。RS-232(推荐标准第232号)是由EIA(电子工业协会,现为TIA)制定的一种串行通信接口标准,主要针对点对点的全双工通信。 阅读详情

相关推荐

别再傻傻分不清了!给嵌入式新手的UART和TTL扫盲指南(附CP2102实测波形)

本文深入解析嵌入式开发中UART与TTL的区别与联系,帮助新手避免常见混淆。通过CP2102模块实测波形分析,详细展示UART异步串行通信协议和TTL电平标准的工作原理,并提供实战技巧与问题排查方法,助力开发者快速掌握嵌入式通信技术。

weixin_42623010的博客 207

UART与TTL

一.首先UART和TTL完全就是两码事。 UART是通用异步收发传输器(Universal Asynchronous Receiver/Transmitter,通常称作UART) 是一种串行异步收发协议。 TTL电平信号规定,+5V等价于逻辑“1”,0V等价于逻辑“0”(采用二进制来表示数据时)。这样的数据通信及电平规定方式,被称做TTL(晶体管-晶体管逻辑电平)信号系统。这是计算机处理器控制的设备内部各部分之间通信的标准技术。 TTL集成电路的全名是晶体管-晶体管逻辑集成电路(Transistor-

u014197096的博客 1万+

串口通信核心概念解析:UART、TTL、RS232与RS485的区别与应用

串行通信是嵌入式系统、工业控制和设备互联的基础技术,其核心在于将数据逐位顺序传输。理解其工作原理,关键在于区分物理接口、电平标准和通信协议这三个层次。物理接口如DB9或端子排定义了连接方式;通信协议如UART(通用异步收发器)则负责数据的串并转换,并规定了起始位、数据位和停止位等基本时序,是串口通信的‘心脏’。而电平标准,如TTL、RS232和RS485,决定了逻辑0和1的电压表示,直接影响信号的抗干扰能力和传输距离。TTL电平直接与微控制器兼容,但传输距离短;RS232采用负逻辑和高电压摆幅,增强了抗扰性

weixin_31476015的博客 282

UART、TTL和RS232的区别

这里写自定义目录标题串行通信UARTTTLRS232 串行通信 UART TTL RS232   图x为维基百科的词条。

muxi_huang的博客 1万+

MicroPython开发esp32入门笔记--串口篇

串行接口简称串口,也称串行通信接口或串行通讯接口(通常指COM接口),是采用串行通信方式的扩展接口。串行接口 (Serial Interface)是指数据一位一位地顺序传送。其特点是通信线路简单,只要一对传输线就可以实现双向通信(可以直接利用电话线作为传输线),从而大大降低了成本,特别适用于远距离通信,但传送速度较慢。

m0_55202222的博客 9094

【嵌入式开发】从驱动到应用开发UART

Uart口,全称Universal Asynchronous Receiver/Transmitter` ,中文名通用异步收发传输器,俗称"串口"。它是一种通用串行数据总线,用于异步通信。该总线双向通信,可以实现全双工传输和接收。嵌入式中最常见的用法就是将一个UART作调试设备用。 UART包括了RS232、RS449、RS423、RS422和RS485等接口标准规范和总线标准规范.........

Bigan(安)的博客 909

嵌入式之UART,COM口,TTL,RS232,RS485的区别详解

UART,RS232,RS485名词解释区别介绍个人理解: 名词解释 UART(Universal Asynchronous Receiver/Transmitter)指通用异步收发传输器,本质上是硬件,用来异步传输数据。RS232是一种物理层协议,规定了特定的接口标准。 区别介绍 UART是一种异步通信协议,而RS232只是物理层的电气接口要求。UART可以使用RS232物理层来进行通信。而RS232作为物理层也可以用其余不同于UART的协议来做通信。 名称 串口释义 UART 一种异步串

yechen1的博客 5842

Android车载应用开发与分析(11)- 车载Android应用开发入门指南

将时间回退到2017年我大学刚毕业时,彼时移动互联网就已经开始退潮,各大个培训机构也纷纷停止了Android相关的培训,曾经热火朝天的应用开发从那时起,就开始走向下坡路,小程序以及众多跨平台框架也让市场对Android原生开发的需求逐年降低,市场需求的降低也造就了Android开发的面试变得史无前例的“卷”。 终于我在2019年选择离开了互联网,投身当时还不是非常火热的车载Android领域继续从事Android原生开发。而这一年中国首个外商独资的整车制造项目,“...

linkwj的博客 1万+

[科普]UART、RS232、RS422、RS485、TTL:深入解析串行通信家族

串行通信协议家族解析:UART是异步串行通信的核心协议引擎,负责数据帧格式定义和并串转换;TTL则定义了逻辑电平标准,与UART常配合使用。RS232采用单端负逻辑传输,适合点对点中距离通信;RS422通过差分信号实现更强的抗干扰能力,支持全双工点对点或单发多收;RS485在RS422基础上增强为多点双向通信,成为工业总线的主力。这些技术各有特点,UART+TTL适合板级通信,RS232用于传统设备接口,而RS422/485则适用于工业环境的长距离可靠传输。

极客不孤独的博客 2593

最邻近点对问题(Closest-Pair Problem):二维的分治解法详解

低维时,最邻近点对问题可以利用分治求解。但是网络上相关资料良莠不齐,对于3维甚至难有有价值的参考。最近恰巧梳理了123维最邻近点对问题的相关知识,故在此分享。这是该系列的第二篇,介绍二维情况的分治解法。

Carl_Rabbit的博客 1万+

全志T113s3主线linux开发(0)--基础准备

嵌入式Linux设备的启动大概是三步:1)启动芯片+内存:常见的是Uboot,不过全志的Uboot主线对SPI NAND 不太友好,用TF卡就方便。对于T113S芯片,推荐使用Awboot,简陋但快速。开发阶段用这个就方便好多,对SPINAND支持也方便。2)启动linux内核:主线内核以下通篇都用6.13以上的内核。对比tina5.0还在用5.4 ,主要是性能、安全上有变化。6.0以上内核在devicetree的编写具体格式上有了变化,网上大量tina5.0和5.4内核的编写方式不适用。

2301_79234138的博客 2247

rs232接口_「涨知识」RS232、RS485、UART、TTL这么多串口你都弄明白了吗?

RS232、RS485、UART、串口、COM口、USB口、TTL这些分别是什么?它们之间的关系你又弄清楚了吗?首先需要区分时序标准和逻辑电平标准是什么?时序标准指的是和实际电压的逻辑值(0和1)在时间轴上的标准,简单讲,时序标准规定了逻辑信号的格式,什么时候该收或发1?什么时候该收或发0?逻辑电平标准指的是物理量和逻辑值之间的关系,具体物理量可以是电压、电流等,最常见的是电压。逻辑电平标准规定了...

weixin_39843338的博客 447

Xilinx系列学习(一) BRAM的使用,并用PL读取BRAM数据

Xilinx系列学习(一) BRAM的使用,并用PL读取BRAM数据一,Xilinx BRAM介绍二,BRAM对应的IP核调用和使用1,BRAM对应的IP核介绍2,BMG例化IP核的调用 一,Xilinx BRAM介绍 BRAM 就是Block Memory,是Zynq的PL端的存储RAM单元。可以利用BRAM,在PS和PL之间进行数据的交换。Zynq中还有一类存储器,称为分布式随机访问存储器(D...

weixin_43941525的博客 3万+

串口,UART,TTL,RS232,RS422,RS485详解

--------------------- 作者:Bertfans 来源:优快云 原文:https://blog.youkuaiyun.com/Bertfans/article/details/80027151 版权声明:本文为博主原创文章,转载请附上博文链接! 串口通信(Serial Communication), 是电子工程师面对的最基本的一个通讯方式,它是指外设和计算机间,通过数据信号线 ...

u014183377的专栏 5224

通讯软件019——分分钟学会Prosys OPC UA Server配置

本文介绍如何配置Prosys OPC UA Simulation Server,通过本文可以对OPC UA的基本概念有所了解,掌握OPC UA的本质。

zhouwl72的博客 4300

Valeo近场数据集:多模态行人意图检测技术解析

行人意图检测是智能驾驶系统的关键技术,通过分析行人运动轨迹预测其行为意图。传统方法受限于单传感器数据,难以应对复杂场景。多模态融合技术结合视觉、LiDAR和惯性测量数据,显著提升检测精度。Valeo近场数据集(VNF)创新性地采用鱼眼相机、多LiDAR和动作捕捉系统,实现3D姿态与意图标签的精准对齐。该数据集支持开发距离自适应的行人感知算法,在ADAS防碰撞、智能迎宾等场景具有重要应用价值。关键技术包括传感器同步、3D姿态重建和时空图卷积网络,为行业提供了标准化评估基准。

weixin_30566111的博客 660

嵌入式开发——串口 UART JTAG TTL 区别和联系

参考文献: 区分:串口,COM口,UART,USART https://blog.youkuaiyun.com/qq_26904271/article/details/79829363 JTAG,串口和USB这三者的区别 http://bbs.eeworld.com.cn/thread-453119-1-1.html 1.串口 COM UART JTAG (它们是一个类别的,对应的是硬件,区别是设备...

doudoudouzoule的博客 1万+

3. LangGraph快速入门

本示例中,我们将使用 Claude Sonnet 4.5 模型,并定义加法、乘法、除法工具。# 定义工具@toolArgs:"""@toolArgs:"""@toolArgs:"""# 为大模型绑定工具图的状态用于存储消息和大模型调用次数。LangGraph 中的状态在整个智能体执行过程中保持持久化。使用带的Annotated类型可以确保新消息追加到现有列表,而不是替换列表。模型节点用于调用大模型,并决定是否调用工具。return {],

Long_像风一样自由 842

【转】TTL电平与RS232电平差异

转自:http://blog.youkuaiyun.com/skywalker_leo/article/details/18403351 这两天在调试带UART的蓝牙模块,由于刚开始分不清UART电平和RS232电平的区别,直接将蓝牙上UART的RX和TX接到PC上串口的TX和RX,导致所有数据都是乱码。后来才弄清楚:在UART上使用的TTL电平,而PC的串口是RS232,它有自己的电平定义,所以在

smstong的成长轨迹 1029

OpenClaw分布式高可用部署实战:Docker+K8s集群化,支撑万级并发生产业务

OpenClaw从单节点到分布式高可用集群,是企业AI从试点到规模化落地的必经之路。基于Docker+K8s的部署方案,不仅解决了高并发、高可用、弹性伸缩的生产痛点,更让运维成本大幅降低,业务稳定性提升到99.99%。对于电商、制造、政务等对稳定性有极致要求的行业,这套方案是OpenClaw生产上线的标准形态——功能拉满的同时,守住安全、稳定、可控的底线。

专注于Python爬虫开发,分享爬虫技巧、项目实战与反爬经验,使用Scrapy、BeautifulSoup等工具,解决数据抓取难题。 274

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

简单几句讲明白UART、COM、485、RS232、I2C、SPI区分

UART、COM、I2C、SPI都属于硬件接口都是串行口。但是有同步串行口和异步串行口之分,其中UART是单片机串口的俗称,COM口是电脑串口的俗称,它们都是异步串行口;而I2C、SPI都属于同步串行口,再者TTL、RS-232、RS-485区别于硬件接口,它们是指的电平标准(电信号)。

Never say never 6657

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

《智能取餐柜实战》7-串口通信介绍

串口通信是一种设备间常用的通信方式,市面上也有非常多的串口传感器,例如 GPS、Modus 温湿度传感器等等,同时电子工程师也喜欢用串口进行系统调试,通过串口输出日志内容,方便跟踪系统的运行。

2401_84103060的博客 806

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

完成一个STM32的USART串口通讯程序

一.相关原理 1.USART串口协议 UART 通用异步收发传输器(Universal AsynchronousReceiver/Transmitter),通常称作UART,是一种通用的串行异步全双工数据收发传输器(总线)。 UART的作用是:把“要传输的数据”在串行通信与并行通信之间转换。在嵌入式领域,作为把并行信号转成串行信号的硬件设备,UART通常被集成于MCU内部。 UART与USART: UART:universal asynchronous receiver and transmit

qq_45937732的博客 420

低速通信接口(一)UART

低速通信接口包括异步串行通信UART、同步串行通信I2C和SPI。 首先简单介绍以下: 串行通信:计算机与I/O设备之间的传输的数据是一位接一位的依次传送的。 并行通信:计算机与I/O设备之间通过多条数据传输线交换数据。 异步通信:数据传送以字符为单位;用起始位和停止位标识每个字符的开始和结束;相邻字符之间间隔任意长,只需要接受时钟频率和发送时钟频率相同即可。异步通信不需要传递同步时钟信号。 同步...

buzhiquxiang的博客 1850

串口通信—UART

1.串行通信:数据通过一条信号线逐位传输。特点:抗干扰能力强,但速度较慢。并行通信:数据通过多条信号线同时传输。特点:速度快,但线路多抗干扰能力弱。2.:数据只能(固定发送方和接收方)。:数据可双向传输,但(发送时不能接收,接收时不能发送)。:数据可(发送和接收独立进行)。串口通信:一种串行通信方式,通过单条或两条信号线传输数据,广泛用于设备间短距离通信。常见的串口通信为。通过的帧结构传输数据。时序如下:1.空闲状态:信号保持高电压(逻辑1)

2503_92591182的博客 662

I.MX6ULL开发板上的UART

嵌入式系统中的通信指两个及以上主机(计算机、嵌入式主机、芯片等)之间的数据交互,主要分为并行通信与串行通信两类。通信类型传输方式优势劣势并行通信多个比特同时通过并行线传输传输速率高占用大量芯片资源串行通信数据拆分为单个比特,按次序在单根总线传输系统资源占用少、结构简单速率相对较低USB USART&USB POWER 模块,不建议 USB 作为电源供电,避免板子发热。

m0_74317917的博客 763
上一篇: RK3288 Android5.1正常开机log
下一篇: rk3288 Android7.1 wifi 蓝牙 驱动
_Fly__
博客等级 码龄16年 21粉丝 40原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值