CAN和CAN FD组网思考

  关注菲益科公众号—>对话窗口发送 “CANoe ”或“INCA”,即可获得canoe入门到精通电子书和INCA软件安装包(不带授权码)下载地址。

目前,整车的网络拓扑中,CAN FD的使用已经非常普遍。当然,带来的问题也非常的多。CAN FD在设计之初,就考虑了向后兼容Classic CAN,以便于CAN FD报文和经典CAN报文在同一个局域网内共存。然而,具体到工程的实现,很多细节还需要开发人员把控,确保网络通信的鲁棒性。本文,从经典CAN和CAN FD组网的角度讨论如下几个问题:

1、经典CAN网络加入CAN FD节点,需要注意什么?

2、CAN和CAN FD的ID可以相同吗?

3、采样点对通信的影响

1、经典CAN网络加入CAN FD节点,需要注意什么?

当整车电子电器架构由原有的经典CAN网络拓扑升级到支持CAN FD的网络拓扑时,节点的软/硬件均需要有所改变。CAN的网络拓扑升级如下所示:

(一)硬件改变

当经典CAN节点升级到CAN FD节点时,需要考虑Transceiver和Controller的选型。

Transceiver选型:

因为CAN FD的数据段支持更高的通信速率(eg:2000Kbps),意味着Transceiver可以进行更快的数(Digital)/模(Analog)信号的转换,所以,如果要支持CAN FD报文,对于CAN FD节点,Transceiver选型中,要选择支持CAN FD的收发器。eg:TLE6250(不支持CAN FD),不能选用,NXP TJA1145(支持CAN FD),可以选用。

Controller选型:

一般,CAN Module(主要指CAN Controller)集成在主芯片中,所以,选择主芯片时,需要选择支持CAN FD通信的芯片。就目前常用的主流芯片(eg:英飞凌、瑞萨、ST等),几乎都支持CAN FD通信。

网络拓扑增加CAN FD节点,不能仅增加一个CAN FD节点,如果仅增加一个CAN FD节点,意味着这个CAN FD节点发送的CAN FD报文,没有对应的接收节点,也就会造成No Ack错误,总线上出现错误帧,如下所示:

所以,支持CAN FD报文的网络,需要至少两个通信CAN FD节点。

CAN和CAN FD的组网通信如下所示:

(二)软件改变

如果CAN的网络拓扑中,增加了CAN FD节点,需要Classic CAN节点设置CAN ID的过滤功能,否则,Classic CAN节点会将CAN FD报文数据段按照500Kbps速率采样,进而可能造成数据采样错误,发送错误帧,影响总线通信。关于CAN采样原理,可以参考前文《CAN通信基础:采样原理》。

如何理解过滤?为了降低CPU的负载,在开发中,会对总线报文进行过滤(Filter)设置,即:节点只接收需要的报文,忽略非相关报文。具体的操作可以参考芯片手册说明,如下(Aurix手册)示意:

如上图,过滤的实质是将与节点不相关的报文丢弃,只有数据相关才放入接收缓冲区,也就是邮箱(Mailbox)。

注意:上图的过滤,从ID开始过滤,如果ID不同,则ID之后的数据,节点不在接收。

2、CAN和CAN FD的ID可以相同吗?

:可以。在11898的规范中,CAN和CAN FD报文格式不同,如下所示:

所以,即使ID(IDentifier)相同,CAN和CAN FD报文也不是相同的报文。所以,两者可以在一个网段内共存,且不会影响对应节点的接收,示意如下:

提示:由于Classic CAN的FDF位为显性(0),CAN FD报文的FDF位为隐性(1),因此,在CAN仲裁过程中,当CAN和CAN FD的ID相同时,根据"线与"规则,CAN报文优先抢占总线使用权。关于CAN的仲裁原理,可以参考前文《CAN总线仲裁原理》。

3、采样点对通信速率的影响

CAN通信质量的好/坏,需要合理的采样点保证。不管是CAN或者CAN FD,开发或者测试中,要严格按照需求设置采样点,否则,可能导致节点发送错误帧,影响总线通信。

举例:

在CANoe中设置仲裁段采样点为65%,通信质量如下所示:

在CANoe中设置仲裁段采样点为95%,通信质量如下所示:

了解更多产品信息,请致菲益科电子官网查询

  • 14
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值