串口通讯接口类型:TTL、RS232和RS485(电平标准)

news2024/11/17 19:44:29

串口通讯接口类型:TTL、RS232和RS485

在串口通信中,常用的接口类型包括TTL、RS-232和RS-485,TTL、RS-232、RS422、RS-485是指的电平标准(电信号)。

通信协议规定了数据传输的规则和格式,包括数据的起始位、停止位、数据位数、校验位等。通信协议还定义了通信双方之间的通信方式,如主从模式、同步或异步传输等。

电平标准则规定了信号的电压范围和传输方式。不同的电平标准使用不同的电压表示逻辑高低,如TTL中使用0V和3.3V或5V,RS-232中使用正负电平,RS-422和RS-485中使用差分信号等。电平标准还定义了信号线的连接方式和传输速率等。

通信协议和电平标准之间的关系在于,通信协议需要根据电平标准来解析和处理信号确保正确的数据传输和通信的可靠性。通信协议需要了解和遵守所使用的电平标准,以正确地解析接收到的信号和生成发送的信号。同时,电平标准也需要与通信协议相匹配,以确保信号的正确传输和解析。

串口通信

在这里插入图片描述
在进行串口通信时,首先要约定好帧格式和波特率,
在这里插入图片描述
这是一帧,我们常见的帧格式:一共有10位,它的第一位时起始位,都是以低电平开始,中间的8个是数据位,数据位的内容由用户定义的,正好是一个字节,通过中间这8个数据位不同的排列组合就能代表256种不同的信息,第10位是停止位,都是以高电平结束。当然还有其它的帧格式,比如数据位只有7位或者5位,约定好帧格式,就需要对波特率进行设定了,串口通信常用的波特率为9600、19200、38400、115200.
在这里插入图片描述
9600:代表在一秒之内,串口可以传输9600个高低电平,那串口通信的高低电压范围是多少呢?

串口了通讯采用的是TTL逻辑,

其中TTL,即晶体管-晶体管逻辑电平。TTL电平信号规定
在这里插入图片描述
电压范围小,这就导致了抗干扰能力差,传输距离短,只在同一板卡内通信。

一般都是在一块电路板上两块芯片之间的通讯,或者芯片和电脑通讯,距离一般都要在一米之内:
在这里插入图片描述
为了提升抗干扰能力和通信距离,1970年美国电子工业协会(EIA)定制并发布了RS-232标准,RS-232标准接口(又称EIARS-232)是常用的串行通信接口标准之一。RS-232可用于许多用途
在这里插入图片描述
同时也可以接工业仪器仪表
在这里插入图片描述
在这里插入图片描述
和串口通讯保持一致,串口通讯使用的也是这三根线,串口通讯时全双工通讯,也就是它可以同时进行收发工作。
在这里插入图片描述
我们只需要在原来串口通讯的基础上加一个电平转换芯片,例如MAX232,这样它就能把TTL电平转换为RS232电平了
在这里插入图片描述
比如我们单片机给MAX232发送的是5V,则它输出12V。
在这里插入图片描述
在这里插入图片描述
RS232只是改变了电平大小,传输的还是原来的串口的那些0或者1的数据,而且RS232也是全双工通讯,还是我们最开始那一帧串口数据,以下为转换成232之后的样子,它最大的好处就是抗干扰能力增强了,因为它的高低电平相差了近20V。
在这里插入图片描述
这样即使某一个信号受到干扰,它的高低电平还有很大的改变余量,所以它的抗干扰能力增强了很多.

在这里插入图片描述
就能实现简单的全双工通信。RS232采用负逻辑传送
在这里插入图片描述
选用该电气标准的目的在于提高抗干扰能力,增大通信距离。由于接口使用一根信号线和一根共地传输线而构成共地的传输形式,所以抗共模干扰能力差
在这里插入图片描述
那为了应对更为严峻的工业环境和更远的距离需求,于是人们制定了RS485标准。RS-485是一种工业控制环境中常用的通讯协议,在1983年由电子工业协会定义。RS485采取了与RS-232完全不同的传输形式,即差分平衡传输。

通讯是在串口通讯的基础上加了一个电平转换芯片,转换芯片可以把输入的串口信号转化成差分信号
在这里插入图片描述
在这里插入图片描述
差分信号只需要两根线,不需要地线.

在这里插入图片描述
比如当信号A大于信号B时,表示逻辑0.反之,逻辑1.
在这里插入图片描述
芯片既可以把串口TTL信号转化成差分信号,也可以把差分信号转化单片机能识别的TTL信号.差分信号最大的优势就是抗干扰能力强.
在这里插入图片描述
在这里插入图片描述
差分平衡传输利用两根信号线(即A和B)的差值来表示逻辑0和逻辑1。

而且它的两跟线采用双绞线形式缠绕在了一起.当突然遇到闪电干扰时,会同时抬高两根信号线的对地电压,但是不会改变两根信号线的压差,因此具有很好的抑制共模干扰功能
在这里插入图片描述
因为接收和发送是共用两根信号线,
在这里插入图片描述
所以不能够同时收和发,只能半双工通信。RS-485是点对多通信,即只能有一个主设备,其余为从设备
在这里插入图片描述
总线上可接到32个设备.
而TTL和RS-232只能进行点对点的简单通讯
在这里插入图片描述
在这里插入图片描述
5分钟看懂!串口RS232 RS485最本质的区别!_哔哩哔哩_bilibili

注意:

其实无论是RS232还是RS485,他们只定义了物理层,规定了电平标准,对我们编程几乎没有影响,只需要会简单的串口通讯,就能快速的进行RS232或RS485通讯.

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

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

相关文章

docker 搭建jenkins

1、拉取镜像 docker pull jenkins/jenkins:2.4162、创建文件夹 mkdir -p /home/jenkins_mount chmod 777 /home/jenkins_mount3、运行并构建容器 docker run --restartalways -d -p 10240:8080 -p 10241:50000 -v /home/jenkins_mount:/var/jenkins_home -v /etc/localtime:…

从零开始构建基于YOLOv5的目标检测系统

本博文从零开始搭建基于YOLOv5模型的目标检测系统(具体系统参考本博主的其他博客),手把手保姆级完成环境的搭建。 (1)首先Windows R输入cmd命令后打开命令窗口,进入项目目录,本博文以野生动物…

无涯教程-jQuery - jQuery.ajaxSetup( options )方法函数

jQuery.ajaxSetup(options)方法为将来的AJAX请求设置全局设置。 jQuery.ajaxSetup( options ) - 语法 $.ajaxSetup( options ) 这是此方法使用的所有参数的描述- options - 一组配置Ajax请求的键/值对,所有选项都是可选的。 Sr.No.Option & Remark1 asy…

Stack

文章目录 定义分类静态栈动态栈 算法应用 定义 在静态内存当中分配的叫做栈,在动态内存中分配的叫做堆。 **红色椭圆圈当中的就是在栈中分配的,蓝色下划线的就是在堆里分配的。**栈和堆表示的是分配数据的一种方式。静态局部变量是通过压栈和出栈来分配…

网络安全行业相关证书

一:前言 对于考证这个话题,笔者的意见是:“有比没有好,有一定更好,但不一定必须;纸上证明终觉浅,安全还得实力行”。很多人对于各种机构的考证宣传搞得是云里雾里,不知道网络安全行业…

【Java练习题汇总】《第一行代码JAVA》网络编程篇集合体系篇,汇总Java练习题——Socket 与ServerSocket、List和Set、Map~

Java练习题 网络编程篇&集合体系篇 1️⃣ 网络编程篇&集合体系篇 1️⃣ 网络编程篇&集合体系篇 一、填空题 在类集中存放单值的最大父接口是___________ ,存放一对值的最大父接口是___________ 。___________ 接口保存的数据是不允许重复的&#xff…

c语言复合赋值符和运算符的优先级问题

结论: 复合赋值符的优先级小于运算符 【练习1】 a * a / b的运算顺序是什么? a / b * a 【练习2】 x / 3 2 * 3 2 / 3 6 2 x 0

使用os库操作目录和文件

1. 获取本机操作系统的分隔符 # 导入os库 import os # 获取本机操作系统的分隔符 print(os.sep) 2. 获取本机操作系统的类型 如果是windows,是nt。 # 导入os库 import os # 获取本机操作系统的类型 print(os.name) 3. 获取当前的工作目录路径 # 导入os库 import…

RL vs 最优控制:用于轨迹跟踪的 LQR(使用 Python 代码)

一、说明 在本博客系列中,我们将了解最优控制的经典方法,这些方法在某种程度上为强化学习等更熟悉的主题奠定了坚实的基础。这两个领域之间存在着不可避免的共同边界,本系列旨在提出这些最优控制的形式化方法,作为强化学习方法的有…

[内网渗透]SUID提权

文章目录 [内网渗透]SUID提权0x01.什么是SUID?0x02.如何设置SUID?0x03.查找属主为root的SUID文件0x04.进行SUID提权1.find提权2.vim/vi/vim.tiny 以root权限修改文件3.bash提权4.less/more执行系统命令5.nano以root权限修改文件6.awk执行系统命令7.cp以r…

CHD6.2.1集群 Hive开启Iceberg

下载jar包 https://repo1.maven.org/maven2/org/apache/iceberg/iceberg-hive-runtime/1.0.0/iceberg-hive-runtime-1.0.0.jar 存放在/opt/cloudera/parcels/CDH/lib/hive/auxlib/ CDH集群修改hive配置 选择xml格式 粘贴即可 <property><name>iceberg.engine.hi…

QT: 完成服务器的实现

1> 思维导图 2> 手动完成服务器的实现&#xff0c;并具体程序要注释清楚 Widget.h #ifndef WIDGET_H #define WIDGET_H#include <QWidget> #include <QTcpServer> //服务器类 #include <QTcpSocket> //客户端类 #include <QMessageBox> //…

小狐狸ChatGPT付费创作系统V2.1.4独立版 +WEB端+ H5端 + 小程序端(新增关注自动回复)系统搭建安装教程

PCu央小狐狸ChatGPT付费创作系统V2.1.4提供最新的对应版本小程序端&#xff0c;播播资源测试相比上几版本增加了关注公众号自动回复、扫码登陆自动回复功能&#xff0c;优化了部分细节。本版小程序端对应最新的2.1.4小程序前端。绘画功能建议采用其他绘画接口-意间AI&#xff0…

Python入门【变量的作用域(全局变量和局部变量)、参数的传递、浅拷贝和深拷贝、参数的几种类型 】(十一)

&#x1f44f;作者简介&#xff1a;大家好&#xff0c;我是爱敲代码的小王&#xff0c;CSDN博客博主,Python小白 &#x1f4d5;系列专栏&#xff1a;python入门到实战、Python爬虫开发、Python办公自动化、Python数据分析、Python前后端开发 &#x1f4e7;如果文章知识点有错误…

nbcio-boot项目把springboot从2.3.5.RELEASE升级到2.7.10和mybatis-plus升级到最新的3.5.3.1的问题解决记录

考虑到原先版本比较老&#xff0c;今天把springboot从2.3.5.RELEASE升级到2.6.6和mybatis-plus升级到最新的3.5.3.1。 编译出现下面的问题 用参数 -e -X clean package后打印出更多的出错日志信息 at org.apache.maven.shared.filtering.DefaultMavenResourcesFiltering.filter…

大数据未来的前景怎么样?_光点科技

随着科技的迅猛发展和互联网的普及&#xff0c;大数据已成为当今社会中不可或缺的重要资源。大数据是指庞大而复杂的数据集合&#xff0c;这些数据通过高级计算技术进行处理和分析&#xff0c;可以揭示出有价值的信息和趋势。在过去几年中&#xff0c;大数据已经在各行各业产生…

迁移学习、微调、计算机视觉理论(第十一次组会ppt)

@TOC 数据增广 迁移学习 微调 目标检测和边界框 区域卷积神经网络R—CNN

pyspark笔记:读取 处理csv文件 (pyspark DataFrame)

pyspark cmd上的命令 1 读取文件 1.1 基本读取方式 注意读取出来的格式是Pyspark DataFrame&#xff0c;不是DataFrame&#xff0c;所以一些操作上是有区别的 1.1.1 format DataFrame spark.read.format("csv").option(name,value).load(path) format表示读取…

基于飞桨paddle的卷积神经网络构建手写数字识别模型测试代码

基于飞桨paddle的优化的卷积神经网络构建手写数字识别模型测试代码 原始测试图片为255X252的图片 采用的是多层卷积神经网络实现模型 本次预测的数字是: 0 预测结果正确 测试结果&#xff1a; PS E:\project\python> & D:/Python39/python.exe e:/project/python/MNIST…

如何用Python统计CSDN质量分

文章目录 CSDN质量分查询selenium爬取博客地址单篇测试批量查询分析 CSDN质量分查询 CSDN对博客有一套分数评价标准&#xff0c;其查询入口在这里&#xff1a;质量分查询&#xff0c;效果大致如下 如果质量分太低&#xff0c;就会在博文的标题下面出现黄底黄字&#xff1a; 这…