大家好,我是阿荣。感恩遇见!

本文部分图文来源于网络,并经过整合、编辑和勘误。实战分享栏目将重点介绍嵌入式的基础知识,并融合一些实战经验,持续勘误和迭代,建议关注和收藏!WX同名。

RS-232概述

RS-232标准接口(又称EIARS-232)是常用的串行通信接口标准之一,它是由美国电子工业协会(Electronic IndustryAssociation,EIA)联合贝尔系统公司、调制解调器厂家及计算机终端生产厂家于1970年共同制定,其全名是“数据终端设备(DTE)和数据通信设备(DCE)之间串行二进制数据交换接口技术标准”。该标准规定采用一个25个脚的DB-25连接器,对连接器的每个引脚的信号内容加以规定,还对各种信号的电平加以规定。后来IBM的PC机将RS-232的DB-25连接器简化成了DB-9连接器,从而成为事实标准。而工业控制的RS-232接口一般只使用TXD、RXD、GND三条线。

DB-9连接器

DB-9连接器分为公头和母头。来认识一下,下图是其中一种的DB-9连接器实物图。

DB-9连接器的引脚定义详见下面的图片和表格。

编号

定义

功能

1

DCD

数据载波检测

2

RXD

数据接收

3

TXD

数据发送

4

DTR

数据终端准备好

5

GND

信号地

6

DSR

数据设备准备好

7

RTS

请求发送

8

CTS

清除发送

9

RI

振铃提示

串口通信时主要用到的是2、3、5引脚。在嵌入式开发中主要用到串口通信功能,因此,本文主要介绍RS-232作为串口通信的使用方法。

DB-9连接方式

公母头连接方式分为三种:公对母,公对公,母对母。这3种连接线都有直连线和交叉线,所以总共有6种连接方式。

什么是直连线和交叉线?

直连线:2对2,3对3,5对5;交叉线:2对3,3对2,5对5。

为什么会出现直连线和交叉线呢?

这里有个知识点,即通信的前提条件:RXD接TXD、TXD接RXD。

标准的DB-9定义是2脚为RXD,3脚为TXD。在设计电路的时候,有些人为了用直连线,于是就将2脚接TXD,3脚接RXD。

在电路设计时,如果不将收发引脚与标准引脚定义反接,就得用交叉线。一般情况下:两母头是交叉线,一公一母是直连线。

测试串口线好坏的方式

1、用万用表测量连通性

测量时,直连线为2/3/5对应2/3/5;交叉线为2对3,3对2,5对5进行测量(即交叉串口一头的2量另一头的3)。若导通,则引脚连接良好;若不导通,则引脚连接存在问题。

Tips:测量母头,需要将万用表探针插入引脚洞中,因为万用表测量探针比较粗,所以需要在万用表探针上焊接上两个比较细的金属针以便于测量母头。

2、用串口助手测量收发功能

在串口收发功能已实现的情况下,短接DB-9的2/3脚,并用串口助手发送数据。连接如果没有问题,即可实现自发自收。

RS-232的电气特性

电气特性是指电压水平、信号转换速率和线路电阻的规格。

电压水平

RS-232 被称为TTL逻辑,因此 RS-232使用TTL特定的5V和GND逻辑电平。在这个逻辑中,“1”的范围从-15伏到-3伏,而逻辑“0”的范围从+3伏到+15伏。这意味着逻辑“1”是低电压,逻辑“0”是高电压。通常逻辑“0”约为+12伏,逻辑“1”约为-12伏。电压相对于“GND”,一个公共接地引脚。介于-3V和+3V之间的电压称为未确定的逻辑状态。

转换速率

最重要的特征之一是信号电平变化的速率,称为转换速率。在RS-232中,最大压摆率始终保持在30V/µs。由于标准的这些限制,它有助于减少与其他信号的串扰。RS-232的最高传输速率为20kbps。

通讯

RS-232标准只允许一对一通信,支持双向传输,全双工。

线路阻抗

线路阻抗是DTE和DCE线之间的电阻,大概是3Ω到7Ω。根据RS-232标准,有两种不同长度的电缆。 较早的RS-232标准定义电缆的最大长度为15米,而修订后的标准规定了与电缆单位长度容量决定最大长度。

RS-232的工作原理

在 RS-232标准设备中,一根导线传输变化的电压,另一根导线接地,因为导线具有单端。由驱动器和接收器电路的接地电压差异引起的噪声会影响单端信号。 RS-232标准中的信息或数据仅通过一条数据线在一个方向上串行传输。为了结合双向通信,需要三根线(RXD、TXD和GND)以及控制信号。

RS-232严格遵循异步通信协议,即没有时钟信号来同步发送方和接收方。因此,它需要开始位和停止位来通知接收器何时检查数据。每个位的传输之间存在一定时间的延迟。此延迟是非活动状态意味着信号设置为-12伏或逻辑“1”,如前所述,逻辑1 为-12伏,逻辑 0 为RS-232中的12伏。

首先,发送器(即DTE)向接收器(即DCE)发送一个起始位,通知它数据传输从下一个位开始。我们始终将起始位保持为逻辑0 或+12伏,接下来的5到9个字符是数据位。

如果使用奇偶校验位,则最多可以传输8位,如果不使用奇偶校验位,则可以传输9个数据位。成功发送数据后,发送器发送停止位,可以是1位、2位或5位长。

由于RS-232是一个完整的标准,但许多制造商并没有遵循该标准。有的遵守完整的标识,有的仅部分遵循规范。这是因为RS-232标准实施的这种变化是并非所有设备和应用程序都需要RS-232协议的完整规范和功能。例如,使用RS-232的串行模型可能需要比使用串行端口的串行鼠标更多的控制线。

RS-232的局限性

为了操作RS-232,发射器和接收器之间需要一个公共平台。这就是为什么在RS-232协议中DTE和DCE之间使用短电缆的原因。

如果波特率随着电缆长度的增加而增加,则很有可能串扰被电缆之间的电容所抑制。

线路中的信号极易受到噪声的影响,噪声可以是内部的,也可以是外部的。

RS-232的电压电平不适应现代的TTL系统。为此,需要一个外部电平转换器。

实战分享:一文读懂RS-232总线相关推荐

  1. 「项目实战」一文读懂思科网络设备IOS系统

    今天给大家带来的小知识是一文读懂思科的IOS系统,相信大家都有了解,但是今天呢给大家把完整的流程梳理出来,这样有助于大家记笔记哦! IOS是被用来传送网络服务并启动网络应用的.Cisco路由器的IOS ...

  2. 十大报表工具 BI 产品深度点评-----BI报表行业专家干货分享----一文读懂报表与BI的行业现状----最新常用BI报表工具对比科普帖

    目前国内市场上的报表 BI 工具琳琅满目,看起来也各有特点,这给选型工作带来了一些困扰,本文就一些较活跃的报表 BI 产品进行点评,对于不太熟悉这些产品和技术的同学,可作为参考资料. 这里选了十个产品 ...

  3. 航芯技术分享 | 一文读懂什么是量子密码

    被喻为"重要数据保险箱"的安全芯片已经渗入人们生活的方方面面.随着5G.物联网.车联网的迅速发展,为安全芯片开启了新的应用场景,同时也带来了新的挑战. 本文将带大家深入了解安全芯片 ...

  4. 一文读懂物联网 MQTT 协议之实战篇

    一.前言 上一篇我们介绍了 MQTT 协议格式以及相关的特性:一文读懂物联网 MQTT 协议之基础特性篇,这一篇我们就来实战一番,理论得与实践结合,方能吃透 MQTT. 我的那个读者还提到了讲一下 M ...

  5. 从实验室走向大众,一文读懂Nanopore测序技术的发展及应用

    关键词/Nanopore测序技术    文/基因慧 随着基因测序技术不断突破,二代测序的发展也将基因检测成本大幅降低.理想的测序方法,是对原始DNA模板进行直接.准确的测序,消除PCR扩增带来的偏差, ...

  6. 一文读懂HttpServletRequest

    点击上方"好好学java",选择"置顶公众号" 优秀学习资源.干货第一时间送达! 精彩内容 java实战练习项目教程 全网最全电子图书分享 你所需要的大数据视频 ...

  7. 你真的懂数据分析吗?一文读懂数据分析的流程、基本方法和实践

    导读:无论你的工作内容是什么,掌握一定的数据分析能力,都可以帮你更好的认识世界,更好的提升工作效率.数据分析除了包含传统意义上的统计分析之外,也包含寻找有效特征.进行机器学习建模的过程,以及探索数据价 ...

  8. 腾讯资深架构师干货总结:一文读懂大型分布式系统设计的方方面面

    1.引言 我们常常会听说,某个互联网应用的服务器端系统多么牛逼,比如QQ.微信.淘宝.那么,一个大型互联网应用的服务器端系统,到底牛逼在什么地方?为什么海量的用户访问,会让一个服务器端系统变得更复杂? ...

  9. 一文读懂华为的组织绩效和个人绩效管理

    一文读懂华为的组织绩效和个人绩效管理 本文作者 | 谢宁,<华为战略管理法:DSTE实战体系>.<智慧研发管理>作者 添加图片注释,不超过 140 字(可选) 本文主要包含两大 ...

  10. 一文读懂Faster RCNN

    来源:信息网络工程研究中心本文约7500字,建议阅读10+分钟 本文从四个切入点为你介绍Faster R-CNN网络. 经过R-CNN和Fast RCNN的积淀,Ross B. Girshick在20 ...

最新文章

  1. Python报错TypeError: Tuple or struct_time argument required
  2. Splash页面跳转主页面,去掉主页面标题栏
  3. Caffe学习系列(13):数据可视化环境(python接口)配置
  4. 03-对图像进行数值计算和加权融合
  5. C语言函数如何返回字符串
  6. Linux输入子系统浅析
  7. 什么是1号信令、7号信令和PRI信令?
  8. Warez 组织的64K 3D动画下载
  9. Python语言的起源与发展
  10. 【ARM基础概念:ARMv7架构,ARM(ARM7、ARM9)、Cortex-M4、M7等内核、MCU、MPU、SOC,STM32的一些概念】
  11. 2020-12-07 Git 解决 git cherry-pick could not apply
  12. BUCTOJ邀请赛20180814-D: String
  13. 汇编语言,and、or指令
  14. html flag属性,html5 的flag是什么意思?
  15. python 按键精灵脚本_[620]使用Python实现一个按键精灵
  16. 微信小程序使用face++实现人脸识别登录注册
  17. html 绘制正方形,使用HTML5画布绘制正方形
  18. java获取时间下周几的时间
  19. java程序设计有理数,《Java程序设计》复习题
  20. 计算机VB给abc排序编程,初学者必知:VB10个小编程

热门文章

  1. PHP Warning: include(./sys/xxx.php): failed to open stream: No such file or directory
  2. 单招报计算机要考什么,单招考试一般都考什么内容
  3. 总结kali中文输入法失败的原因
  4. STM32学习5——舵机控制
  5. DNF60版本阿里云服务器+本地客服端教程①服务端搭建
  6. 概率论与数理统计--知识点
  7. 信息系统开发与管理【八】之 运行管理
  8. 揭密全球第一DSP IP授权商
  9. 如何在JavaScript中删除字符串的第一个字符
  10. 比程序员更好的职业_立即成为更好的程序员的20条技巧