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

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

3天内不再提示

CAN总线波特率的基础知识

jf_13721959 来源:jf_13721959 作者:jf_13721959 2022-04-25 08:37 次阅读

信息通信通道中传输的速率被称为波特率。通俗地说,波特率是数据在网络上传输的速度/速率。这是以比特/秒表示的。因此,一秒钟内在通信网络上传输的比特数就是波特率。

对于串行多主 CAN 总线,如果波特率被称为“500000波特”,则 CAN 上的该端口每秒最多可传输500000位。

poYBAGJlLIOAFzQxAABBaqblgGc268.png

CAN总线上支持的不同波特率:

● 125kbps

●250kbps

●500 kbps(大多数汽车应用的标准配置)

●1000 kbps(1mbps)

各式各样的软件允许用户根据 CAN 总线的需要来设置总线速度。下面的图片来自 Influx 的 DiaLog 软件,用户可以自行选择总线速度(从各种可用的选项中选择)。

pYYBAGJlLKKAAS2oAAHyDwQwSXE089.png

每一个波特率支持多少条信息?

CAN总线支持8字节长的数据传输。但是,这种长信息的传输会导致较大的延迟。在比特率约为1 Mbit/s的情况下,平均数据长度为4字节,使用标准格式每秒可传输多达10,000条信息,即在数据长度为8字节的情况下,每秒可发送多达7,200条信息。

使用简单的公式,人们可以计算出在 CAN 总线上传输一个帧的大概时间。

现在,举例来说,1个CAN帧大约包含125比特。

1 假设比特率=250 kBits/psec

位时间=1/位速率=1/(250*1000)s=4*s=4μs

因此,在使用250kBit/s时,1位在总线上的传输时间为4μs

因此,传输1帧的大致时间是(4 µs/bit * 125 bit)=500 µs

2 假设比特率=500 kBit/s

位时间=1/位速率=1/(500*1000)s=2*s=2µs因此,当使用500kBit/s时,1位在总线上的传输时间为2µs因此,传输1帧的大致时间是(2µs/bit * 125 bit)=250 µs

CAN总线负载率计算公式

总线负荷以百分比计算。

总线负载 = #bytes发送/速度

总线负载% = 字节数(在一秒钟内发送)*(8位)/(波特率bps)*100%。

假设一秒钟内要发送的字节数为1000

因此,在250kbps的情况下,总线负载%将成为:-

1000*8/250000*100% = 3.2%

同样,在500kbps时,总线负载%将变成:-

1000*8/500000*100% = 1.6%
然而,在较高的信息优先级下,通常可以实现70%到80%的总线使用率。

在给定的秒数内在总线上传输给定数量的帧。除非定义,否则每个消息(32位数据)的平均位假定为76位(可能有所不同)。

●5ms -5帧

1/ 0.005 * 5 * 76 = 760,00

●10ms -5帧。

1 / 0.010 * 5 * 76 = 38,000

●100ms - 5帧

1 / 0.100 * 5 * 76 = 3800

总帧数=760,00+38000+3800=117800

波特率为250 kbps时的总线负载=117800/250000*100%=47.12%

波特率为500 kbps时的总线负载=117800/500000*100%=23.56%

在下面的截图中,我们可以看到 Influx 的Rebel CT/LT,通道(HS)的活动日志和跟踪查看器。在这里可以看到比特率和总线负载(总量、每秒和负载)等参数。此外,Rx/Tx 信息和错误帧(总数、每秒和负载)也可以轻松查看。

pYYBAGJlLPmAWwiCAAaeoIxfwPk863.png

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

对于 CAN 总线来说,波特率和线缆的长度是成反比的,波特率越高,线缆的长度越短。

波特率 线缆长度
1 Mbit/s 30 m- 40m
800 kbit/s 50m
500 kbit/s 100m -110m
250 kbit/s 240m - 250m
125kbit/s 500 m

审核编辑:汤梓红

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

    关注

    145

    文章

    1950

    浏览量

    130734
  • 通信
    +关注

    关注

    18

    文章

    6029

    浏览量

    135957
  • 波特率
    +关注

    关注

    2

    文章

    307

    浏览量

    34117
收藏 人收藏

    评论

    相关推荐

    can波特率计算

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

    如何确定CAN通信节点的波特率容忍度

    汽车CAN总线设计规范对于CAN节点的波特率容忍度有着严格的规定,每个节点都必须具备一定的波特率容忍度,才能使节点组合到一起后,实现较好的通
    发表于 10-15 10:51 6268次阅读
    如何确定<b class='flag-5'>CAN</b>通信节点的<b class='flag-5'>波特率</b>容忍度

    #硬声创作季 #CAN #PLC 总线设计的波特率应该如何选择?

    CAN波特率波特率发生器
    学习电子知识
    发布于 :2022年11月02日 20:00:29

    CAN波特率的计算

    重新同步跳跃宽度,不参与波特率的计算,其值可以编程为1到4个时间单元,表示该总线波特率范围的容差度。公式中1表示同步段固定为一个单位时间。)APB1Clock=36Mhz,CAN_B
    发表于 08-20 08:11

    CAN通信波特率设置

    CAN通信波特率设置 LM3S2000、LM3S5000、LM3S8000系列CPU内部有1~3路CAN控制器,通过对CAN位定时寄存器CANBIT及
    发表于 04-06 18:00 24次下载

    CAN特殊波特率如何计算

    CAN总线采用的是异步串行通信,也就是没有单独的时钟线来保证各个收发器之间时钟的一致,每个收发器是按事先设置的波特率来对总线上的电平进行分位。因此
    发表于 08-17 18:19 7062次阅读
    <b class='flag-5'>CAN</b>特殊<b class='flag-5'>波特率</b>如何计算

    非标准的CAN波特率计算方法

      CAN总线采用的是异步串行通信,也就是没有单独的时钟线来保证各个收发器之间时钟的一致,每个收发器是按事先设置的波特率来对总线上的电平进行分位。因此
    发表于 09-19 09:07 26次下载
    非标准的<b class='flag-5'>CAN</b><b class='flag-5'>波特率</b>计算方法

    STM32 CAN总线传输波特率的计算

    由于CAN属于异步通讯,没有时钟信号线,连接在同一个总线网络中的各个节点会像串口异步通讯那样,节点间使用约定好的波特率进行通讯。
    发表于 11-10 09:02 6895次阅读
    STM32 <b class='flag-5'>CAN</b><b class='flag-5'>总线</b>传输<b class='flag-5'>波特率</b>的计算

    CANOpen系列教程04 _CAN总线波特率、位时序、帧类型及格式说明

    CANOpen系列教程04_CAN总线波特率、位时序、帧类型及格式说明
    的头像 发表于 03-06 16:18 8015次阅读

    CAN总线光纤转换器怎么实现波特率的设置

    can总线光纤转换器是能够将CAN总线数据转换为光信号进行传输的设备,是一种非常典型的远程CAN中继工具。和很多的
    的头像 发表于 06-28 14:36 1965次阅读

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

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

    can总线波特率一般采用多少?

    can总线波特率一般采用多少 Can总线是指Controller Area Network,是一种高性能的串行通信协议。
    的头像 发表于 09-07 15:05 4309次阅读

    CAN通信波特率不对会怎样?

    CAN通信波特率不对会怎样?  CAN通信是一种流行的通信协议,它广泛应用于许多现代车辆的系统中。CAN通信协议通过处理器之间的数据交换,实现车辆的控制。
    的头像 发表于 10-11 17:19 2471次阅读

    以太网CAN转换器波特率的设置步骤是怎样的?

    确定CAN总线波特率:首先,需要确定所连接的CAN总线波特率
    的头像 发表于 01-17 09:24 980次阅读

    为啥要转换波特率 波特率和传输速率的关系

    对于串行多主 CAN 总线,如果波特率被称为“500000波特”,则 CAN 上的该端口每秒最多可传输500000位。
    的头像 发表于 03-06 17:38 5022次阅读
    为啥要转换<b class='flag-5'>波特率</b> <b class='flag-5'>波特率</b>和传输速率的关系