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

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

3天内不再提示

CAN FD的波特率到底能跑多快?

西西 来源:未知 作者:致远电子 2018-08-22 17:55 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

众所周知,CAN FD是基于CAN 2.0的升级版协议,为了满足汽车电子日益增长的高带宽和高传输速率的要求,CAN FD主要升级了以下几个方面:

一、更高的传输波特率

图 1 可变数据段波特率结构

CANFD速率包含两个段的速率,一个是仲裁段和ACK段,沿用CAN2.0的规范,最高速率为1Mbit/s,中间的数据段是可以加速的,标称可以达到5Mbit/s,甚至更高。

二、更高效的数据段

对于汽车电子来说,对车辆动力系统、地盘以及主被动系统来说,加长的数据段避免了数据非必要的拆分,大大提升了CAN帧的传输效率。

图 2 CAN FD高效的数据段

三、更可靠的CRC校验和额外的控制位

在传统的CAN 2.0中,由于填充规则会对CRC产生干扰,在CAN FD中升级了算法,将填充位加入多项式的运算,主要作为格式检查,考虑数据长度变化的区间很大,CRC也根据区间会生成两种校验算法,当帧长小于210位,使用CRC_17,当帧长小于1023位,使用CRC_21位算法。

CAN FD的波特率到底能跑多快?

图 3 可靠的CRC校验

另外在CAN FD中利用了部分保留标志位,新增三种控制位,包括EDL(是否是CANFD帧)、BRS(是否可变速率)以及ESI(错误状态),丰富帧内的有用信息。

CAN FD的波特率到底能跑多快?

图 4 新增控制位

接下来我们回到正题,升级后的CAN FD到底能跑多快呢?直接讲参数很肤浅的,我们要分析。。.。。.那我们就用一个问题开始,大家都知道CAN 2.0最高速率可以到1M,但是为什么汽车电子高速CAN只跑到500K呢?

对于CAN总线的传输速率来讲,传输距离和传输速率是成反比的,一般来说传输距离(m)=(50000/波特率kbps)*0.8,如图 5所示。

图5 传输距离和传输速率的关系。

收发器和传输距离到底关系何在?刚才提到,收发器输出是电平值,电平在传输的过程中难免衰减,线缆本身的阻抗和容抗无法避免,其次首尾终端电阻也是必要的,主要有两个功能:

首尾120欧姆终端电阻,保证阻抗连续性(防止电信号反射);

放电作用;

针对终端电阻放电作用,我们下面从两个层面分析:

电平传输层面分析

图 6 CAN FD波形

我们先来看一个CANFD分解波形,其中是由显隐性电平构成的,其中上升沿是由CAN收发器芯片本身驱动的。当显性电平转变为隐形电平的时候,需要终端电阻放电,所以下降沿是我们的终端电阻放电的造成的。

CAN FD的波特率到底能跑多快?

图 7 负载电阻与差分幅值的关系

如果下降沿缓慢是什么原因导致?

检查收发器外围电路是否存在容性较大的器件(不影响电路正常工作的情况下拆除),重新测试波形是否正常;

检查线缆的参数,每米容抗是否在正常范围内,正常线缆电容在40-70pF/m,容抗太大,建议更换线缆;

增加终端电阻放电,建议采用专业设备测试网络阻抗容抗做正确匹配。

CAN FD的波特率到底能跑多快?

图8 CANscope总线阻抗容抗测试

四、总线网络数据能否正确传输层面

阻抗太大,电压幅值压降太大,传输距离大大降低。现象就是在手牵手的网络拓扑中,当然差分辅幅值最好不要低于1.3V,防止在强干扰的环境下,导致收发器无法识别或误识别总线信号

容抗也是影响下降沿的重要因素,如果下降沿太缓慢会导致位宽拉长,导致收发器错误识别,导致0/1的翻转,CAN总线是错误重发的机制,会一直重发,直到这一帧被正确接收。

图 9 电容对下降沿的影响

同样的我们回到阻抗和容抗的匹配是如何影响CAN FD的传输速率的呢,接下来我们用实测证明:

图 10 稳定时间140ns

前面我也提到5M数据速率时,位时间是200ns,,实际传输过程中,一位时间包含了上升沿、下降沿以及数据稳定时间,如图 15所示,数据稳定时间按是140ns,那其中上升沿和下降沿占了60ns,理想情况下,上升沿和下降沿完全对称,其中上升沿时间是30ns,按照边沿极限值12%计算,实际算出来的位时间=30/(12/100)=250ns,那么相对应的传输波特率就=1/250ns=4M波特率,所以实际5M波特率也就是在测试使用,如果按照7%的边沿时间为安全值来计算,实际的位时间=30/(7/100)约等于42ns,相对应的传输波特率=1/42ns约等于2.3M,所以想要实际在工况下稳定可靠传输,数据端波特率在2M左右比较合理。

综上所述,影响CAN FD到底能传输多快影响的因素非常多,也是我们大多数工程师在实际CAN总线开发的过程中会忽略的问题,如果需要CAN总线的相应的产品解决方案,随时致电我们,期待与您的探讨和交流。

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

    关注

    145

    文章

    2020

    浏览量

    134662
  • CAN
    CAN
    +关注

    关注

    58

    文章

    3010

    浏览量

    471391
  • 波特率
    +关注

    关注

    2

    文章

    319

    浏览量

    35434
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    can波特率计算

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

    CAN FD波特率到底能跑多快

    众所周知CAN FDCAN 2.0的升级协议,也是汽车电子行业未来发展的主要趋势,那CAN FD到底
    的头像 发表于 09-17 10:01 1.7w次阅读

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

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

    CAN FD波特率到底能跑多快看了就知道

    众所周知,CAN FD是基于CAN 2.0的升级版协议,为了满足汽车电子日益增长的高带宽和高传输速率的要求,CAN FD主要升级了以下几个方
    发表于 08-04 07:45

    CAN波特率的计算

    车辆使用的250K 的波特率,使用STM32制作的控制板中的CAN波特率的计算波特率=APB1Clock/(1+CAN_BS1+CAN_BS
    发表于 08-20 08:11

    S32K148如何更改CAN FD波特率

    我将 S32_SDK_S32K1xx_RTM_4.0.3 中的 flexcan_encrypted_s32k148用于 S32K148EVB,我需要以 1000 kbps 的波特率发送 CAN
    发表于 03-17 08:45

    CAN通信波特率设置

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

    CAN特殊波特率如何计算

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

    关于UART/CAN/PLL时钟计算波特率的方法

    SWM系列关于UART/CAN/PLL等时钟相关模块,计算波特率的方法。
    的头像 发表于 03-18 16:52 9331次阅读

    CAN总线波特率的基础知识

    信息在通信通道中传输的速率被称为波特率。通俗地说,波特率是数据在网络上传输的速度/速率。这是以比特/秒表示的。因此,一秒钟内在通信网络上传输的比特数就是波特率
    的头像 发表于 04-25 08:37 3.6w次阅读
    <b class='flag-5'>CAN</b>总线<b class='flag-5'>波特率</b>的基础知识

    MPC5744p的CAN通信波特率计算

    本篇笔记主要记录MPC5744p的CAN通信波特率计算,以及需要注意的问题。
    的头像 发表于 07-10 17:40 3388次阅读

    MPC5744p的CAN通信波特率如何计算

    本篇笔记主要记录MPC5744p的CAN通信波特率计算,以及需要注意的问题
    的头像 发表于 01-20 14:58 2948次阅读
    MPC5744p的<b class='flag-5'>CAN</b>通信<b class='flag-5'>波特率</b>如何计算

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

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

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

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

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

    确定CAN总线的波特率:首先,需要确定所连接的CAN总线的波特率CAN总线的波特率通常以位/秒
    的头像 发表于 01-17 09:24 1855次阅读