必看!嵌入式基于UART的通信协议-RS232、RS485协议解析

  这两种都是串口通讯的变种,为了提升串口通信的距离和稳定性。通常来说,正常的串口通信使用的是TTL电平,即高电平为2.4-5V,低电平为0-0.4V。高低电平之间的范围很小,如果有静电或者其他外界的干扰,很快会将低电平拉高,造成传输错误。为了应对这种干扰,则需要优化这种通信协议。

UARTRS232RS485
传输距离m1米15米1500米
最高传输频率hz-2M50M

一、基础知识点

  1. 差分信号(两线制):指通过取两个信号之间的差异或差值而获得的信号。如:当两线输出电压差高于2V时为逻辑0,当输出电压差为0时为逻辑1。具体根据需求设置电压差。
    在这里插入图片描述
      差分信号的优势:当通信只使用一根线时,某一点处的电压突然发生跳变,则数据发生错误,所以不能进行远距离的传输。而差分信号是使用两根线进行共同作用,而且是双绞线缠绕,这样即使发生干扰,也是两根线同时受到干扰,它们的压差也会保持不变。这样数据不会受到干扰,可进行远距离传输。

  2. 共模干扰:指同时影响两个信号引脚(通常是信号和地)的外部干扰。这种干扰的特点是它以相同的方式影响两个信号,即它在信号和地之间是共同的(共模的)。共模干扰可以对信号质量和系统性能产生负面影响,特别是在高精度、高灵敏度的应用中。
    共模信号: 是同时作用于两个信号引脚(例如信号和地)的外部干扰信号。

二、协议

  1. RS232协议
      RS232协议是在1970年由美国电子工业协会(EIA)联合贝尔系统、调制解调器厂家、计算机终端生产厂家共同制定的用于串行通讯的标准; 该标准规定采用一个标准的连接器,标准中对连接器的每个引脚的作用加以规定,还对信号的电平加以规定。

    (1)物理连接
       该标准规定采用一个25引脚的DB-25连接器,标准中对连接器的每个引脚的信号内容加以规定,还对各种信号的电平加以规定; 后来IBM的PC机将RS232简化成了DB-9连接器,现在工业控制的RS-232接口一般只使用RXD、TXD、GND三条线。
    在这里插入图片描述

    (2)通信原理
       在串口通信的基础上加上一个232转换芯片。232芯片可以把TTL信号转化为RS232电平信号。

    (3)电平信号
      规定逻辑“1”的电平为-5V ~ -15 V,逻辑“0”的电平为+5 V~+15 V。选用该电气标准的目的在于提高抗干扰能力,增大通信距离。
       虽然很多处理器中都会集成UART控制器,但处理器产生的信号一般都是TTL信号并不是符合RS232标准的信号,所以一般我们还需要在处理器外部去添加电路对信号的电平进行转换。
       RS232只是改变了电平大小,还是全双工通讯,传输的还是原来串口的那些0和1的数据。
    在这里插入图片描述
      

  2. RS485协议
      RS-485是美国电子工业协会(EIA)在1983年批准了一个新的平衡传输标准(balanced transmission standard),EIA一开始将RS(Recommended Standard)做为标准的前缀,不过后来为了便于识别标准的来源,已将RS改为EIA/TIA。目前标准名称为TIA-485,但工程师及应用指南仍继续使用RS-485来称呼此标准。
      RS485 是一种通用的通信标准,广泛用于数据采集和控制应用中。它的主要优点之一是它允许将多个 RS485 设备放在同一条总线上,这使得多个节点可以相互连接。
    在这里插入图片描述

    (1)通信原理
      主要原理是在收发双方之间加一个485电平转换芯片,可以将输入的串口信号转换成差分信号,此种通信方式只需要两根线,不需要地线。下图是差分信号的逻辑。在A信号大于B信号时,输出逻辑0,小于输出逻辑1。
    在这里插入图片描述

(2)电平信号
   RS485标准规定采用差分信号进行数据传输,A、B两线间的电压差为+2V到+6V表示逻辑“1”,两线间的电压差为-2V到-6V表示逻辑“0”;使用差分信号能有效地减少噪声信号的干扰,延长通信距离,RS485的通信距离可以达到1500m;RS485接口信号的电平比RS232降低了,所以不易损坏接口电路的芯片,且该电平与TTL电平兼容,可方便地与TTL电路连接。
在这里插入图片描述

(3)优势
   这样做的最大优点是其的抗干扰能力很强,因为是差分信号,而且线都是双绞线形式缠绕在一起,所以即便有干扰也是两根线一起受到干扰,相减就抵消掉了。RS485的传输距离最高可达1200米。并且传输的频率还更高,可达50M,RS232的频率最高也只有2M。

  

三、通信报文方式比较

在这里插入图片描述

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

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

相关文章

IEC61499 学习记录

IEC 61499是一种用于工业自动化的标准化模型,它基于面向对象的方法,用于描述分布式控制系统。该模型包括基本元素如事件、函数块和资源,以及它们之间的关系。函数块是该模型的核心概念,它们描述了系统中的控制和数据处理功能。整个…

BT656视频传输标准

前言 凡是做模拟信号采集的,很少不涉及BT.656标准的,因为常见的模拟视频信号采集芯片都支持输出BT.656的数字信号,那么,BT.656到底是何种格式呢? 本文将主要介绍 标准的 8bit BT656(4:2:2)YCbC…

记一次面试题

1.Php 私有化包(composer)的部署 1. 创建你的PHP包 确定你的包的功能和命名空间。 创建一个新的目录并初始化一个Git仓库。 使用composer init命令创建一个composer.json文件,并定义你的包名、版本、依赖等信息。 2. 开发并测试你的包 在本地…

Redis与自定义注解实现重复

1、创建 SubmitLock 注解 Target(ElementType.METHOD) Retention(RetentionPolicy.RUNTIME) public interface SubmitLock {String key() default ""; } 2、注解实现 Autowiredpublic RedisUtils redisUtils;Around("execution(* com.example.code_generation…

十分钟掌握前端获取实时数据的三种主流方式

前端获取实时数据的三种主流方式 本文聊聊前端获取实时数据的三种主要方式。想象一下,我们在网上购物时,经常能看到最新的优惠信息弹出,或者在社交媒体上看到朋友的最新动态更新。这些都是因为后端在默默地向我们的页面推送了最新的消息。那…

22.HarmonyOS App(JAVA)位置布局PositionLayout使用方法

不常用 在PositionLayout中,子组件通过指定准确的x/y坐标值在屏幕上显示。(0, 0)为左上角;当向下或向右移动时,坐标值变大;允许组件之间互相重叠 布局方式 PositionLayout以坐标的形式控制组件的显示位置,允许组件相…

【C++】win11,OpenCV安装教程(VS2022)

1.下载 首先进入官网,下载对应的安装包,苹果系统就选IOS pack,微软系统就选Windows 下载地址:Releases - OpenCV 不方便外网下载的话可以下载我分享的百度网盘资源: 链接:https://pan.baidu.com/s/1lV7l…

C语言条件判断:if、else、else if 和 switch 详解

在C语言中,条件判断是一种根据特定条件执行不同代码块的核心机制。为了更好地理解这一概念,本文将深入探讨C语言中的四种主要条件判断结构——if、else、else if和switch,并通过优化变量来展示其实际应用。 1. if 语句 if 语句用于基于某个…

rhel8静态ip配置

1.先cd进来 2.把默认的dhcp改成static IPADDR192.168.211.22 22随意改,255以下的数字都行,1和255不要用 GATEWAY192.168.211.2和虚拟机默认网关保持一致 重启网络 nmcli c reload和 nmcli c up ens160 ping百度测试--(成功了&#xff0…

如何在Linux中安装新版的Python软件

一、引言 Python是目前世界上最为流行的编程语言,其在人工智能领域表现尤为出色。通常,我们为了测试github上面的一些项目,比如:chat-on-wechat, 我们就可以在vps上的Linux系统中安装Python,从而实现各种人…

CentOS镜像如何下载?在VMware中如何安装?

一、问题 CentOS镜像如何下载?在VMware中如何安装? 二、解决 1、CentOS镜像的下载 (1)官方网站 The CentOS Project (2)官方中文官网 CentOS 中文 官网 (3)选择CentOS Linux…

92.网游逆向分析与插件开发-游戏窗口化助手-显示游戏数据到小助手UI

内容参考于:易道云信息技术研究院VIP课 上一个内容:游戏窗口化助手的UI设计-CSDN博客 码云地址(游戏窗口化助手 分支):https://gitee.com/dye_your_fingers/sro_-ex.git 码云版本号:e8116af3a7b0186adba…

汽车信息安全--SHE中的密钥管理(二)

目录 1.概述 2 SHE的数据存储和管理 3.小结 1.概述 上一篇我们讲解了HTA基本概念,SHE和EVITA HSM区别以及SHE的架构,接下来我们聊一聊SHE中的密钥管理策略。 2 SHE的数据存储和管理 由于SHE是硬件安全扩展,因此密钥和MAC值的存储需要使用SHE内部memory,每个密钥均搭配…

告警能力中台设计与实践(一)——策略制定

一、告警与通知 告警与通知是服务监控平台的主要输出,但二者是又一定差别的。 告警会在某些时间发生时(如指标达到阈值)时触发。然而,这并不一定意味着有人被告知此事件的发生)这是通知的来源。 所谓通知&#xff0…

《Docker极简教程》--Docker基础--基础知识(三)

一、Namespace和Cgroups 1.1 Namespace的作用和类型 Docker 的 Namespace 是 Linux 内核提供的一种机制,用于隔离系统资源,使得容器能够拥有自己独立的视图,从而实现更高程度的隔离和安全性。Namespace 在 Docker 中扮演着至关重要的角色&a…

初识C语言·编译与链接

1 翻译环境和运行环境 C语言标准ANSI C 实现C语言代码的时候 一般需要经过两种环境,一是翻译环境,二是运行环境,计算机能识别的是二进制的指令,人写完代码后通过翻译环境,使代码变成计算机能读懂的可执行的机器指令&a…

机器人工具箱学习(一)

一、机器人工具箱介绍 机器人工具箱是由来自昆士兰科技大学的教授Peter Corke开发的,被广泛用于机器人进行仿真(主要是串联机器人)。该工具箱支持机器人一些基本算法的功能,例如三维坐标中的方向表示,运动学、动力学模…

极限方法大总结【高数笔记】

【方法步骤】 分几步?又有几个小步骤? 【不同类型的极限】 不同类型极限的方法又有哪些步骤? 不同类型极限的方法有哪些前提条件? 个别类型极限方法的技巧有哪些?

『运维备忘录』之 Yum 命令详解

运维人员不仅要熟悉操作系统、服务器、网络等只是,甚至对于开发相关的也要有所了解。很多运维工作者可能一时半会记不住那么多命令、代码、方法、原理或者用法等等。这里我将结合自身工作,持续给大家更新运维工作所需要接触到的知识点,希望大…

Droppy教程 | 轻量文件共享

文件共享成为了日常工作的重要组成部分。特别是对于那些需要快速、高效分享大文件的人来说,拥有一个简单可靠,且易于管理的平台至关重要。 项目地址:https://github.com/droppyjs/droppy 一、测试环境 uname -i # x86_64 docker -v # Docke…