串口RS232、RS485最本质区别

news2024/11/18 17:37:02

由下图可看出不管是RS232还是RS485,其本质都是串口通信,只不过是串口通信电平上的变种而已。所以,我们首先从串口通信讲起。
1、串口通信
在这里插入图片描述
任何一种通信都要有物理接口和通信协议。串口通信物理接口如下图:
在这里插入图片描述
串口通信协议首先要约定好帧格式和波特率。下图是我们常见的帧格式。
在这里插入图片描述
该数据帧一共有10位,第一位为起始位(永远为低电平),最后一位为停止位(永远为高电平),中间的8个位数据位,数据位的内容由用户自定义,正好构成1字节,通过这8个数据位不同的排列组合(高低电平),就能代表256种不同的数字,对应ASCII码表即可得256种不同的信息。
那串口通信高低电压的范围是什么呢?
串口通信采用的是TTL逻辑(Transistor-transistor logic),其输出的高电平最小为2.4V,输出的低电平最大为0.4V(如下图)。
在这里插入图片描述
我们一般认为串口通信的高电平为5V,低电平为0V,这就造成了其抗干扰能力很弱。
在这里插入图片描述
若在某个时刻突然来了一个静电(如下图),就很可能把某一位低电平变高,这就导致串口通讯的距离必须要很短,一般都在1m之内。
在这里插入图片描述
2、RS232标准
为了提高串口通信的距离和稳定性,美国工业联盟制定了一个RS232标准(RS是Recommended Standard),下图为RS232的接口。
在这里插入图片描述
在这里插入图片描述
虽然RS232有9个接口,但是我们通常只用上图中的3根线,和基础的串口通信接口保持一致(全双工通信),如下图。
在这里插入图片描述
我们知道,单片机与电脑进行基本的串口通信时,电脑需要通过USB转TTL,那么单片机与电脑如何进行RS232通信呢?
如下图所示,只需在原来串口通信的基础上加一个电平转换芯片,例如MAX232,这样它就能把TTL电平转换成RS232电平了。比如,单片机给MAX232发送的是5V,则通过电平转换,输出12V,如果给它发送0V,则MAX232输出-12V。反之,如果MAX232收到12V电压,则会把12V电压转换成5V的TTL电平。
在这里插入图片描述
在这里插入图片描述在这里插入图片描述
RS232的高电平的范围很广,电压处在3-15V之间都算高电平;低电平是-3V~ -15V。
在这里插入图片描述
RS232只是改变了电平的大小,传输的还是原来的串口的那些0或者1的二进制数据,而且RS232也是全双工通信(实际用到的物理接口与串口一致)。由下图可知,传输同样的一帧数据,串口与RS232最大的区别在于最大最小电平,RS232的高低电平相差了近20V。这样,即使某一个信号受到干扰,它的高低电平还有很大的改变余量,所以它的抗干扰能力增强了很多,通信距离可达15米,但是速率只有20K(19200/s)。

在这里插入图片描述
在这里插入图片描述
3、RS485
面对更为严苛的工业环境,与更远更快的传输距离需求,RS232就力不从心了,所以RS485标准就诞生了。
与RS232差不多,RS485通信是在串口通信的基础上加了一个485电平转换芯片,如下图。
在这里插入图片描述
485转换芯片可以把单片机TTL发送的串口信号转换为差分信号(如下图),485芯片既可以把串口TTL信号转换成差分信号,也可以把差分信号转换成单片机能识别的TTL信。
在这里插入图片描述
差分信号只需要两根线,不需要地线,如下图。比如当信号A大于信号B时,它代表逻辑0;当信号A小于信号B时,它代表逻辑1。
在这里插入图片描述
在这里插入图片描述
差分信号最大的优势就是抗干扰能力强,因为他用的是两根信号线的差值来表示逻辑0和1。而且它的两根线采用双绞线形式缠绕在一起(如下图),这样即使受到干扰,也是两根线同时受到干扰,所以最后的电压差也基本保持不变。因此RS485可以传输更远的距离,可达1.2千米,且传输频率可达50M。
在这里插入图片描述
在这里插入图片描述
但注意:RS485是半双工通信,也就是在同一时间,其要么在发送数据,要么在接收数据,不能同时进行。其带来的好处是可以进行一主多从的组网通信,而串口通信和RS232只能进行点对点的简单通信。
在这里插入图片描述
最后,无论是RS232还是RS485,他们只定义了物理层,规定了电平标准(如下图),对编程没有影响,所以只需会串口通信即可掌握RS232和RS485通信,这就是串口、RS232和RS485最本质的区别。
在这里插入图片描述
注:转自B站视频教程UP:爱上半导体

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/633904.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

RBAC权限管理,Shiro实践

概念介绍 RBAC是指基于角色的访问控制(Role-Based Access Control),它是一种广泛应用于计算机安全领域的访问控制机制。RBAC通过将用户分配到不同的角色,来控制用户对系统中资源的访问权限。 在RBAC中,每个角色都被…

LVS-DR群集部署

目录 一、LVS-DR数据包流向分析 二、 DR 模式的特点 总结 三、LVS-DR中的ARP问题 1.在局域网中具有相同的IP地址,势必会造成各服务器ARP通信的紊乱 2.路由器根据ARP表项,会将新来的请求报文转发给RealServer,导致Director的VIP失效 3.解…

openGauss5 企业版之yum方式安装

文章目录 1. 支持的架构和操作系统版本2. 使用限制3. 安装方式4. 使用说明 本章节主要介绍在openEuler 22.03 LTS操作系统上,通过yum命令一键安装openGauss数据库。 1. 支持的架构和操作系统版本 x86-64 openEuler 22.03 LTSARM64 openEuler 22.03 LTS 仅在openEu…

【博学谷学习记录】超强总结,用心分享 | 架构师 Maven学习总结

文章目录 Maven基本1.什么是Maven2.为什么用Maven?(1)jar 包的规模(2) jar 包的来源(3)jar 包之间的依赖关系 3.Maven目录结构4.maven仓库配置 Pom层次Pom文件简介Super POM 依赖管理1 依赖传递2 传递性依…

基于51单片机的智能火灾报警系统温度烟雾光

wx供重浩:创享日记 对话框发送:火灾报警 获取完整源码源文件电路图仿真文件论文报告等 功能简介 51单片机MQ-2烟雾传感ADC0832模数转换芯片DS18B20温度传感器数码管显示按键模块声光报警模块 具体功能: 1、实时监测及显示温度值和烟雾浓度…

【Docker】docker部署springboot+vue+mysql+nginx前后端分离项目【部署实战篇】

文章目录 0、安装docker并准备一个springboot-vue前后端分离项目前后端打包放到服务器上1、docker 安装jdk2、docker 安装mysql通过Docker命令进入Mysql容器内部初始化数据sqlDbx连接查看 3、docker build构建后端镜像修改配置数据库JDBC链接IP为虚拟机服务器IPmaven clean pac…

【MySQL】一文带你掌握聚合查询和联合查询

文章目录 1. 聚合函数1.1 COUNT1.2 SUM1.3 AVG1.4 MAX,MIN 2. GROUP BY3. HAVING4. 联合查询4.1 内连接4.2 外连接4.3 自连接4.4 子连接 5.合并查询5.1 UNION5.2 UNION ALL 1. 聚合函数 概念: 聚合函数是一种用于处理数据集合的函数,它将多个…

Fiddler 抓包的八个实用技巧,你学会了吗?

目录 前言 1、双击Session时,使响应页始终显示到”json”tab页;使请求页始终显示到“webform”tab页 2、显示每个Session 的请求IP地址 3、修改响应Header中的Content-Type 4、右键session 直接使用浏览器打开url 5、Session列中,显示每…

电脑拷贝到u盘数据丢失原因分析|3种恢复方法

在电脑操作中,经常需要将数据拷贝到U盘中进行备份或传输。但有时候,我们可能会遇到数据在拷贝或传输过程中丢失的情况。这种情况下,我们该如何找回这些丢失的数据呢? 下面,为大家介绍一些恢复U盘数据的方法&#xff0c…

[ICNN 1993] Optimal brain surgeon and general network pruning

Contents IntroductionMethodOptimal brain surgeon (OBS)Computing the inverse HessianThe ( t − o ) → 0 (\mathbf t-\mathbf o)\rightarrow 0 (t−o)→0 Approximation References Introduction 作者提出 Optimal brain damage (OBD) 的改进 Optimal brain surgeon (OB…

霍夫变换(Hough Transform)

文章目录 1. 什么是霍夫变换2. 霍夫直线检测2.1 霍夫直线检测的具体步骤2.2 霍夫直线检测的优缺点2.3 OpenCV中霍夫直线检测的应用2.3.1 标准霍夫检测2.3.2 概率霍夫检测 3. 霍夫圆检测4. 源码仓库地址 1. 什么是霍夫变换 霍夫变换(Hough Transform)是图像处理中的一种特征提取…

Spring Data Redis的使用

Redis的valus值的五种数据类型 问题:Windows下出现Could not connect to Redis at 127.0.0.1:6379: 由于目标计算机积极拒绝,无法连接。 解决方法为在Redis-x64-3.2.100目录下打开两个cmd窗口,分别输入 命令redis-server.exe redis.windows…

【Go知识点】Gorm Hook 无侵入实现 数据表防篡改

一、前言 Hi,开门见山的说,这次给大家带来的是关于 Gorm Hook 机制的落地场景,笔者也是在Gorm官方文档中了解到有Hook机制的存在,不过一直没有找到过太多合适的场景来使用。 最近刚好在做一块新业务的设计,因为涉及到…

PL2303HXA自2012已停产,请联系供货商的解决办法

一、概述 PL2303 是Prolific 公司生产的一种高度集成的接口转换器,可提供一个RS232 全双工异步串行通信装置与USB 功能接口便利连接的解决方案。PL2303具有多个历史版本,早期的版本是PL2303HX, 近年有PL2303HXA、PL2303HXC、PL2303HXD(D版本…

SpringCloud01:SpringCloud介绍、服务提供者、服务消费者

SpringCloud和SpringBoot的关系 SpringBoot专注于快速、方便地开发单个个体微服务,SpringCloud关注全局的治理框架,它将SpringBoot开发的一个个单体微服务整合并管理起来,为各个微服务之间提供:管理配置、服务发现、断路器、路由…

GO-slice详解

GO-slice详解 简介 slice(切片)是go中常见和强大的类型,这篇文章不是slice使用简介,从源码角度来分析slice的实现,slice的一些迷惑的使用方式,同时也讲清楚一些问题。 slice的底层实现是数组&#xff0c…

(转载)基于蚁群算法的三维路径规划(matlab实现)

1 理论基础 1.1 三维路径规划问题概述 三维路径规划指在已知三维地图中,规划出一条从出发点到目标点满足某项指标最优,并且避开了所有三维障碍物的三维最优路径。现有的路径规划算法中,大部分算法是在二维规划平面或准二维规划平面中进行路…

微服务框架

流量入口Nginx 在上图中可以看到,Nginx作为整个架构的流量入口,可以理解为一个外部的网关,它承担着请求的路由转发、负载均衡、动静分离等功能。作为一个核心入口点,Nginx肯定要采用多节点部署,同时通过keepalived来实…

(八)CSharp-泛型类和参数约束(1)

一、C# 中的泛型 泛型(generic)特性可以让多个类型共享一组代码。 泛型类型不是类型,而是类型的模板。 C# 提供了5种类型:类、结构、接口、委托和方法。 泛型类 泛型的主要优点: 性能 类型转换时,非泛型的…

2018~2019 学年第二学期《信息安全》考试试题(B 卷)

北京信息科技大学 2018 ~2019 学年第 2 学期 《信息安全》课程期末考试试卷 B 课程所在学院:计算机学院 适用专业班级:计科 1601-06,重修 考试形式:(闭卷) 一. 选择题(本题满分 10 分,共含 10 道小题,每小题 1 分) 网络中存在的安全漏洞主…