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

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

3天内不再提示

CAN控制器在CANFD中会导致什么问题

AGk5_ZLG_zhiyua 来源:ZLG致远电子 作者:ZLG致远电子 2022-07-01 11:55 次阅读

都说CANFD是兼容CAN的,实际上这句话有个大前提,那就是CAN控制器是完全遵循ISO11898-1规范的。为什么这么说,接下来听君娓娓道来…

我们先看下CAN的帧结构:

CAN帧结构

75a0ff4a-f8ef-11ec-ba43-dac502259ad0.png

从上图可以看出,标准帧中有个r0位,这个位实际上是个保留位,ISO11898-1中规定:发送方发送r0位固定为显性,接收方则不对该位显隐性做判断。同样,扩展帧除r0位还有个r1位,也是保留位,其规定与r0位一致。由于ISO11898-1对保留位的规定,导致部分老旧的CAN控制器在发送保留位时,未遵循ISO规范要求,将r0或r1位发送为隐性,而不是显性,接收方也能正常接收CAN报文。那么CAN控制器发送标准帧r0或扩展帧r1为隐性,在CANFD中会导致什么问题呢?这个就要从CANFD帧结构说起了。

CANFD帧结构

75b7f1dc-f8ef-11ec-ba43-dac502259ad0.png

如上图所示中箭头方向,在CANFD帧中,原来的CAN标准帧中的r0为此时变为了EDL位(CANFD位),CAN扩展帧中的r1位也同样变为EDL位。EDL位规定,EDL为隐性时为CANFD帧,显性为CAN帧。

CAN标准帧r0位和扩展帧r1位发送隐性位带来的问题那么问题就来了,那些未完全符合ISO11898-1规范的CAN控制器,他们发送CAN帧时R0位为隐性,此时若总线上存在CANFD节点时,就会被CANFD控制器识别为CANFD帧,但是实际上他发送又是CAN帧,这种情况下就导致CANFD控制器接收异常而发送错误帧。这种情况下,对于不完全遵循ISO11898-1规范的CAN控制器来说,CANFD就不兼容CAN了。

75ceaf1c-f8ef-11ec-ba43-dac502259ad0.png

最后,我们再通过上面这张图总结下:未符合ISO11898-1规范的CAN控制器,因其发送报文时,标准帧r0位或扩展帧r1位为隐性,在CANFD网络中,会被CANFD控制器的接收方判别为CANFD帧,从而导致总线错误。

解决方法

若总线存在此CAN控制器时,我们可以将CANFD控制器设置为CAN控制器以兼容该CAN节点。

若使用USBCANFD-200U系列CANFD卡,遇到不规范的CAN控制器时,我们可以通过ZCANPRO设置控制器类型为CAN,就可以解决这个问题。

原文标题:【Z站推荐】CANFD真的完全兼容CAN?

文章出处:【微信公众号:ZLG致远电子】欢迎添加关注!文章转载请注明出处。

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

    关注

    57

    文章

    2744

    浏览量

    463636
  • CAN控制器
    +关注

    关注

    3

    文章

    74

    浏览量

    15031
  • CANFD
    +关注

    关注

    0

    文章

    57

    浏览量

    4939

原文标题:【Z站推荐】CANFD真的完全兼容CAN?

文章出处:【微信号:ZLG_zhiyuan,微信公众号:ZLG致远电子】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    如何选择CAN总线控制器

    现代工业自动化和汽车电子领域,CAN(Controller Area Network)总线因其高可靠性、实时性和灵活性而成为广泛使用的通信协议之一。选择合适的CAN总线控制器对于确保
    的头像 发表于 11-12 09:48 231次阅读

    一款实现PLC扩展CANFD的好工具 — PXB-6020D协议转换

    (可编程逻辑控制器)是核心组件之一,而其上的CAN接口对于实现设备间的通信至关重要。今天,我们就来探讨一下PLC上的CAN接口及其优化方案。PLC通常可以选配CA
    的头像 发表于 10-16 08:07 208次阅读
    一款实现PLC扩展<b class='flag-5'>CANFD</b>的好工具 — PXB-6020D协议转换<b class='flag-5'>器</b>

    CAN/CANFD卡接口函数使用说明

    电子发烧友网站提供《CAN/CANFD卡接口函数使用说明.pdf》资料免费下载
    发表于 10-15 17:35 0次下载

    CAN总线控制器的工作原理

    CAN(Controller Area Network,控制器局域网)总线控制器的工作原理涉及多个方面,包括消息传输、冲突检测与解决、总线仲裁等关键机制。以下是对CAN总线
    的头像 发表于 09-30 11:33 823次阅读

    CAN总线控制器是什么意思

    CAN总线控制器(Controller Area Network Bus Controller)是CAN总线通信系统中的核心部件,它扮演着接收、处理并转发CAN总线数据的关键角色。下面
    的头像 发表于 09-03 14:16 981次阅读

    车载智能控制器 工程机械控制器 CAN总线控制器 硕博电子 #控制器 #can总线 #国产化替代

    控制器总线
    长沙硕博电子科技股份有限公司
    发布于 :2024年08月29日 10:43:57

    移动机械控制器 车载智能控制器 CAN总线控制器

    控制器机械
    长沙硕博电子科技股份有限公司
    发布于 :2024年06月13日 17:02:51

    CAN收发CAN控制器的区别

    CAN总线系统是现代工业自动化和汽车控制系统中常用的通信协议。CAN总线系统中,CAN收发
    的头像 发表于 05-28 15:44 2843次阅读

    CYT2B75 SK Rev03无法正常发送CANFD数据,为什么?

    (T2G_Sample_Driver_Library_8.0.0tviibe1msrcexamplescanfdClassic_CAN),代码未经过任何修改,测试经典CAN,功能正常。 问题:根据论坛和TRM的资料,我尝试手动清除TXBCR寄存
    发表于 05-24 07:37

    汽车测试系统如何实现CANFD到EtherCAT的协议转换

    汽车测试领域,EtherCAT为主控的汽车底盘测试控制系统,需接入CANFD为传输信号的汽车底盘控制器进行采集分析,系统间数据无法直接读取,该如何解决?我们知道汽车车机通讯系统中
    的头像 发表于 03-22 08:23 966次阅读
    汽车测试系统如何实现<b class='flag-5'>CANFD</b>到EtherCAT的协议转换

    CANCANFD协议简介(下)

    CANCANFD协议简介(下)
    的头像 发表于 02-19 12:08 1100次阅读
    <b class='flag-5'>CAN</b>和<b class='flag-5'>CANFD</b>协议简介(下)

    同一路CAN上配置经典CAN时能正常发送数据 ,按规格书配置为CANFD时,未能发送成功的原因?

    你好,我同一路CAN上配置经典CAN时能正常发送数据 ,但是按规格书配置为CANFD时,未能发送成功,想请问我以下配置是否正确。 cy_stc_c
    发表于 02-02 07:33

    使用CYT2B75芯片CANFD模块无法发送消息是什么原因导致的呢?

    你好,我使用SDL的example中的CANFD代码测试CYT2B75芯片CANFD模块,对部分代码进行了硬件适配修改,详见附件,配置为每秒发送一次CAN报文。 问题:消息发送失败,且电脑上位机无法
    发表于 02-02 06:57

    CAN控制器CAN收发CAN驱动的区别是什么?

    CAN总线结构中,CAN控制器CAN收发CAN
    的头像 发表于 01-30 09:44 4320次阅读
    <b class='flag-5'>CAN</b><b class='flag-5'>控制器</b>、<b class='flag-5'>CAN</b>收发<b class='flag-5'>器</b>、<b class='flag-5'>CAN</b>驱动<b class='flag-5'>器</b>的区别是什么?

    CANCANFD协议简介(上)

    CANCANFD协议简介(上)
    的头像 发表于 01-26 08:06 1379次阅读
    <b class='flag-5'>CAN</b>和<b class='flag-5'>CANFD</b>协议简介(上)