微软公司宣布不再支持你正在使用的 IE浏览器,这会严重影响浏览网页,请使用微软最新的Edge浏览器
厂商专区
产品/技术
应用分类

如何实现CAN与CANFD的总线桥接?

2019-12-11 14:37 来源:ZLG立功科技·致远电子 编辑:电源网

CANFD节点如何与经典CAN总线正常通信呢?本文为您介绍CANFD与经典CAN快速融合的思路与方法。

一、CANFD的来源

随着汽车电子行业的快速发展,越来越多的安全辅助ECU、影音娱乐ECU加入到车身总线中,这就对CAN总线数据传送速率提出了更高的要求。基于市场需求,更高传输速率,更多数据载荷的CANFD应运而生。

相比于经典CAN,CANFD有两个显著特点:

一是可变速率,CAN FD的传输速率分为两个频段,从BRS位开始到CRC校验之前这一段是可变速率段,这一段的波特率可以进行加速,理论最高可达到5Mbit/s,而其他位置则和CAN2.0一样,最高速率可达到1Mbit/s;

二是数据场长度增加,CAN FD对数据场的长度做了扩充,从CAN的8字节增加到CAN FD的64字节。

-01

图1 CANFD的提速与扩容

二、兼容性问题

从经典CAN升级到CANFD需要更换哪些硬件呢?硬件更换包括两部分:其一,CAN收发器,通信速率需要从满足1Mbit/s提升到满足5Mbit/s;其二,CAN控制器,链路层协议需完全按照CANFD设计,对于CAN控制包含在微控制器内的节点,则需要更换MCU。

微信截图_20191211143934

图2 CAN与CANFD的链路层对比

虽然CANFD设计时考虑到向下兼容,但链路层的根本改变使我们不得不面临以下问题:经典CAN节点发送的CAN帧能被CANFD节点识别,但CANFD节点发送的CANFD帧不能被经典CAN节点识别,甚至被经典CAN判定为错误帧导致总线严重错误。

三、 解决思路

解决CANFD与经典CAN兼容性的方法有两种,一是将所有经典CAN节点全部升级为CANFD,二是在经典CAN网络与CANFD网络间加入合适的桥接器。显然,设备的更新换代不能一蹴而就,方法一必然带来成本激增,因此方法二将是短期内最优解决方案。

CANFD网桥的设计思路是当接收到CAN FD报文时采用直转、合并、拆分三种方式实现传统CAN的8字节长度和CAN FD的64字节长度的互相转换,无损还原原有数据。

微信截图_20191211144022

图3 CANFD桥接方法

四、 CANFD网桥

CANFDBridge 作为 CAN(FD)智能网桥,支持ISO标准CANFD与Bosch CANFD标准,支持 CAN 转 CAN、CAN 转CANFD、CANFD转 CAN、CANFD转CANFD 等报文默认转换处理。除此之外,还提供帧映射、合并和拆分等特殊转换处理。用户可自由设定 CAN(FD)报文的转发映射、组包拆包等规则,满足自身应用需求。

微信截图_20191211144047

图4 工业级CANFD网桥CANFDBridge

1、每通道独立的控制器类型设置、CANFD标准设置

每个通道都支持设置控制器类型,如图5所示。当选择类型为 CAN 时,只能收发 CAN报文。用户可将接到 CAN 总线的端口控制器类型设置为 CAN,可防止 CANFD 报文转发到CAN 总线。当选择类型为 CANFD 时, CAN 报文和 CANFD 报文都可以收发。

微信截图_20191211144116

图5 控制器类型

每个通道支持设置 CANFD 协议标准,如图6所示。支持 ISO 标准和 Non-ISO 标准。

微信截图_20191211144142

图6 CANFD协议

2、帧类型高级设置

可设置 CAN转CANFD或CAN、CANFD转CANFD或CAN,当在 CAN→CAN、 CANFD→CANFD 时不改变帧数据。当使用勾选“填充”功能后,CAN 报文数据长度等于 8 字节时,会用填充数据将 CANFD报文填充至设置的 CANFD 报文数据长度,当 CAN 帧数据长度为 0~7 时填充无效, 转换后的 CANFD 帧数据长度与 CAN 帧数据长度一样;

微信截图_20191211144207

图7 转换设置

3、数据合并

合并功能用于将多个 CAN 报文合并后转换为 CANFD 报文。设置如图8所示, 此设置使 CAN0 将 ID 为 0x01、 0x02、 0x03 的三个数据长度为8 的标准 CAN 帧合并成 ID 为 0x123,数据长度为 24 的 CANFD 标准帧。

微信截图_20191211144242

图8 经典CAN数据合并CANFD

4、数据拆分

拆分功能用于将 CANFD 报文拆分成多个 CAN 报文发送,设备最多支持设置 64 条拆分规则, 每条规则指定待拆分 CANFD 的帧 ID、帧类型及帧长度。如图9所示设置,此设置将 ID 为 0xF1,长度为 64 字节的 CANFD 标准帧拆分为 8个数据长度为 8 字节的 CAN 标准帧, ID 分别为 0x00~0x07。

微信截图_20191211144310

图9 CANFD拆分为经典CAN帧

5、可靠性保证

为保证数据帧转换的可靠性,CANFDBridge提供失败回送设置。设置使能后 CANFDBridge 转发失败时,会发送指定帧来告知发送方转发失败。示意图如图10所示。

图片1

图10 失败回送机制

CAN与CANFD的桥接依靠CANFDBridge灵活的配置实现,更多应用细节请参阅相关产品手册。

声明:本内容为作者独立观点,不代表电源网。本网站原创内容,如需转载,请注明出处;本网站转载的内容(文章、图片、视频)等资料版权归原作者所有。如我们采用了您不宜公开的文章或图片,未能及时和您确认,避免给双方造成不必要的经济损失,请电邮联系我们,以便迅速采取适当处理措施;欢迎投稿,邮箱∶editor@netbroad.com。

微信关注
技术专题 更多>>
研发工程师的工具箱
智慧生活 创新未来

头条推荐

电子行业原创技术内容推荐
客服热线
服务时间:周一至周五9:00-18:00
微信关注
获取一手干货分享
免费技术研讨会
editor@netbroad.com
400-003-2006