0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

波特率是如何工作的

科技观察员 来源:allaboutcircuits 作者:大卫·彼得森 2022-04-29 15:16 次阅读

在本文中,我们将探讨数据传输速率的挑战,并讨论波特率在旧通信系统中的作用。

计算机通过从一台设备到另一台设备的线路跨线发送“位”数字信息来进行通信。此过程允许设备向您的计算机发送数据或从您的计算机发送数据,您无需担心设置详细信息 - 它可以正常工作。但是,对于某些设备,我们必须提供有关波特率的信息。什么是波特率,它为什么重要?

数字设备之间通信的每个方面都建立在二进制信息的交易之上。最早的设备使用串行和并行通信端口,根据现代标准,速度通常相对较慢。

几乎所有基于现代技术的设备都在计算机背景下处理通信协调。当您将新设备插入备用 USB 端口时,会出现一条消息,提醒您计算机正在“安装设备驱动程序软件”。延迟几秒后,配置完成,我们再也不用担心了。

pYYBAGJrkOuAVIBrAABhN8ZTf0o901.jpg

图 1。常见的 Allen Bradley MicroLogix 1000 使用串行通信方法,其中波特率在 RSLinx 应用程序中选择。

工业设备有点不同。频繁升级计算机系统可能非常昂贵,更不用说风险了。大多数控制系统都包含久经考验的通信协议,但也有点落后于现代自动配置的便利性。我经常连接到 PLC 并被提示提供诸如“波特率”或“半双工和全双工”等术语的信息,同时手动选择 COM 端口来路由信息。

通信协议速度的限制

之前,我提到了串行和并行通信协议。随着数据流变得越来越复杂,每种方法都有自己增加数据吞吐量的方法。对于并行通信,电缆中并排的更多线路可以发送更多数据。随着电子产品变得更小、更紧凑,这带来了明显的挑战。

对于串行通信,更快的数据速率会带来更高的吞吐量。计算机发展的速度允许数据传输速率不断增加,而无需增加捆绑中的电线数量,这对硬件设计人员来说是个好消息。同时,它也给软件开发团队带来了挑战。

最有可能的是,您的计算机可以非常快速地进行通信。诸如以太网 适配器之类的适配器能够达到每秒 10 千兆比特(每秒 10 亿比特)的速度。但是,如果您希望连接到几十年前的设备,它就无法以这种速度处理数据。

设计软件的挑战是了解外围设备共享数据的速度,然后在与该设备通信时将您的计算机限制在该速度。在现代系统中,这就是神秘的“设备驱动软件”中包含的信息。在这两种设备中,限制因素几乎肯定是较旧、速度较慢的设备。

对于早于自动化配置的硬件,这个速度必须在两端手动协调:计算机和外围设备。

为什么速度需要匹配?

传输数据时,通常由 8、16 或 32 位系列的二进制数据片段组成。这些数据字符串可以表示代码、二进制形式的数值或 8 位 ASCII 字符,例如字母、数字或符号。

pYYBAGJrkOyAL30SAAB-1LSlfyM419.jpg

图 2。DirectLogic 105 及其相关软件 DirectSOFT,说明为正确通信选择波特率。

如果发送设备被告知以特定速率发送数据,但接收设备只期望该数据速率的一半,则它将错过所有其他位。不用说,在接收端,数据将是一堆无用的信息。

波特率通常显示为数据交换率的预选列表,因此用户无法输入她或他自己的任意波特率。这些波特率通常从每秒几百位到每秒超过 100,000 位不等。

经验法则是选择可以实现的最快数据速率,而不会留下太多丢失信息的机会。随着数据速率变得更高,一位受到电缆电容干扰的机会增加,并且数据将被破坏。另一方面,选择太低的数据速率可能会提高可靠性,但会花费太多时间发送和接收消息,从而丢失关键的传感器读数。

常见波特率应用

不要期望在基于以太网的适配器和设备上看到可配置的波特率,但在某些情况下可能会遇到这个障碍。

poYBAGJrkO2ACDQeAABVSSb3WFM776.jpg

图 3。Arduino 编程接口,一个常见的业余爱好微处理器平台,通过 Serial.begin 命令(左上角的椭圆形)为控制器板本身选择波特率,并从 PC 终端的列表中选择(右下角的圆圈)。

串行 COM 端口。许多使用标准和专有 COM 端口的微型 PLC 可能需要有关波特率的信息。我已经配置了许多需要此类信息的 MicroLogix1000 处理器。幸运的是,一旦选择了正确的 COM 端口,RSLinx 通常能够自动配置。

DeviceNet 网络。波特率的另一个限制因素是电缆的距离。导线的运行时间越长,预期的波特率就越慢。制造商的规格概述了此类系统的功能。

微处理器。我经常使用业余爱好的微控制器平台,例如 Arduino。在这个设备中,波特率被输入到程序中并加载到电路板上;同样,必须在软件中选择相同的波特率。

较旧的计算机系统,尤其是工业应用中的计算机系统,通信速度不如以太网或其他协议快。为了缓解这种情况,计算机可能会提示您输入波特率。波特率将有助于确保数字设备之间的通信正确且不会丢失任何数据。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 数据传输
    +关注

    关注

    9

    文章

    1872

    浏览量

    64535
  • 通信系统
    +关注

    关注

    6

    文章

    1187

    浏览量

    53320
  • 波特率
    +关注

    关注

    2

    文章

    306

    浏览量

    34112
收藏 人收藏

    评论

    相关推荐

    can波特率计算

    can波特率其实并不难计算,这里给出了can波特率的简单计算,并给出了实例STM32的CAN波特率计算。讲解CAN波特率计算原理。
    发表于 12-14 17:02 1.3w次阅读
    can<b class='flag-5'>波特率</b>计算

    什么是串口波特率?串口波特率的分类及应用详解

    什么是串口波特率串口波特率是指串口通信系统中传输数据的速率。在UART串口通信中,数据以位(bit)的形式传输,波特率是指每秒钟传输的位数。在串口通信中,波特率是非常重要的参数,因为
    的头像 发表于 08-08 10:09 5889次阅读
    什么是串口<b class='flag-5'>波特率</b>?串口<b class='flag-5'>波特率</b>的分类及应用详解

    想将CANFD配置为8MBPS波特率,TESTBOARD_150PC_OUT如何配置吗?

    我想将 CANFD 配置为 8MBPS 波特率,您可以帮我看看TESTBOARD_150PC_OUT如何配置吗? 我配置了 2mbps 的波特率工作正常,但无法配置 8mbps 的波特率
    发表于 03-04 06:31

    调试记录:USART1 不能设定 600BPS 的波特率

    问题:想要通过STM32F103VDT6的 USART1 以600BPS的波特率与另一颗器件进行通信。通过编写程序测试发现,该通信接口未能工作在 600BPS 的波特率上,而是工作在一
    发表于 11-07 10:57

    FoSC对波特率的限制是什么?

    我可以得到我的18F46K80波特率工作在40兆赫(10兆赫XTAL PLL),但不在64兆赫(16兆赫XTAL PLL)。FoSC对波特率的限制是什么,比如EASART、ECAN和ADC?好的,ADC不是
    发表于 10-16 06:10

    STM32CUBEMX配置图

    STM32CUBEMX配置图1.配置CAN引脚。2.配置MCU时钟3.配置CAN外设相关的参数、波特率工作模式等。CAN波特率的计算1.因为CAN的时钟是AHB1外设时钟,这里为8MHZ。2.根据
    发表于 08-05 07:21

    做了一块CH342F的双串口板子,CH342F工作及其不稳定是什么原因?

    自己做了一块CH342F的双串口板子,看起来很简单,但用起来很郁闷:刚插上去,很快就识别了,设置1M的波特率工作正常。但过了半个小时,终端提示已断开。此时再重插板子,则提示获取描述符失败或重置失败
    发表于 07-20 06:13

    为RT1052切换lpuart波特率问题如何解决?

    和 Deinit &init 的方法。两者都不能在切换到如此低的波特率工作。我们甚至尝试将 uart 模块的时钟源从 pll 更改为 osc,但没有效果。你能帮忙解释一下吗?
    发表于 03-23 07:37

    51波特率计算

    51波特率计算
    发表于 12-28 11:07 2次下载

    什么是波特率_波特率9600是什么意思_串口通信为什么要设置波特率

    波特率(Baud Rate) 单位 bps -- 每秒传送的字节数 Byte Per Second.。
    发表于 08-23 11:54 46.1w次阅读

    波特率是什么?波特率设计

    从宏观理解,波特率表征了串口的传输速度。
    的头像 发表于 06-05 15:19 2.6w次阅读
    <b class='flag-5'>波特率</b>是什么?<b class='flag-5'>波特率</b>设计

    什么是波特率?为什么要设置波特率

    欢迎来到东用知识小课堂!一、什么是波特率波特率(BaudRate)单位bps是用于衡量串口通信速度的单位,它表示每秒钟发送的比特数。如果一个串口的波特率为9600,就表示该串口在一秒钟内可以发送
    的头像 发表于 04-08 00:00 6894次阅读
    什么是<b class='flag-5'>波特率</b>?为什么要设置<b class='flag-5'>波特率</b>?

    什么是波特率波特率是如何影响CAN总线长度的?

    信息在通信通道中传输的速率被称为波特率。通俗地说,波特率是数据在网络上传输的速度/速率。这是以比特/秒表示的。因此,一秒钟内在通信网络上传输的比特数就是波特率
    的头像 发表于 08-14 15:23 6327次阅读
    什么是<b class='flag-5'>波特率</b>?<b class='flag-5'>波特率</b>是如何影响CAN总线长度的?

    什么是串口波特率?串口通信为什么要设置波特率

    在电子设备的世界中,数据是通过各种方式进行传输的。其中,串口通信是一种常见的数据传输方式,它以其简单、可靠和广泛的特性,成为了电子设备间通信的重要手段。而在串口通信中,有一个非常重要的参数——波特率
    的头像 发表于 11-03 08:21 5094次阅读
    什么是串口<b class='flag-5'>波特率</b>?串口通信为什么要设置<b class='flag-5'>波特率</b>?

    波特率的定义和计算方法 波特率与数据传输速度的关系

    波特率的定义 波特率(Baud Rate),又称调制速率或传符号,是指每秒传输的符号数目,单位为波特(Bd)。它是一个数字信号通信中重要的参数,在串行通信协议中经常被用作衡量串行数据
    的头像 发表于 11-22 09:49 809次阅读