MCU串口转CAN的思路和方法介绍

接口/总线/驱动

1138人已加入

描述

在嵌入式产品开发过程中,可能会面临CAN路数不够的问题。如何选择合适的转换模块解决这个问题呢?以下将为您讲解几款模块的选型方法。

1.    应用场景

CAN总线是优秀的现场总线之一,已由当初的汽车电子扩散到各行各业。从工业自动化到新能源,从轨道交通再到航空航天,CAN总线技术在中国不断的应用和沉淀。

mcu

图 1 CAN总线数据帧结构

当应用CAN总线时,我们可能会面临以下问题:主控制器没有支持 CAN 控制器或者 CAN 路数不够。具体问题表现:早期产品通信使用的是 RS485 或 RS232 通信,现阶段需要将产品升级到能支持到 CAN 通信;受制于成本限制,主控 MCU 必须选择低端处理器,本身不带 CAN 控制器;开发的产品中需要的 CAN 路数远远大于 2 路,能支持两路以上 CAN 的 MCU 型号有限或成本过高。

mcu

图 2  LPC 系列间 CAN 路数对比

mcu

图 3  多路 CAN 应用场景

当 MCU 内部没有支持 CAN 控制器或者所需的 CAN 路数不能满足要求时,可以选择使用其他通信接口拓展 CAN 接口出来。常见的转换方法有串口转 CAN、以太网转 CAN、WIFI 转 CAN 以及光纤转 CAN,本文主要为大家介绍串口转 CAN 的思路和方法。

mcu

图 4  CAN 转换器产品

2.    如何选型

串口扩 CAN 的模块大体分为两种形式,一种是单纯的协议控制器芯片实现,如 MCP2515 和 MCP2517;另一种是通过高性能的 MCU 实现。相比于单纯的协议控制器芯片,MCU 方案的协议转换模块拥有以下优势:配置简便,配合上位机或串口指令集,几个简单的串口数据发送即可完成配置;缓存较大,在高速或数据吞吐量大时杜绝丢帧现象发生;性能优异,将复杂的协议转换及帧缓存完全集成于用户 MCU 之外,可减少用户 MCU 负担。

ZLG 立功科技·致远电子推出的串口转 CAN 模块主要有 CANFDSM、CSM300 两个系列,选型工作如何入手,我们从他们之间的区别入手。CANFDSM 是最新一代的串口转 CANFD 模块,在能匹配当前热门的 CANFD 基础上,还能完全兼容传统的 CAN2.0 协议。因此,如果您的产品选定的是 CANFD 协议,则只能使用新一代的 CANFDSM 模块。

mcu

图 5  链路层协议区别

如果产品中使用的是 CAN2.0A 或者 CAN2.0B 协议,我们继续对比选择。CANFDSM 不带 CAN 或者 CANFD 收发器,用户需自行增加隔离或者不隔离的收发器模块。而 CSM300 内部集成有 CAN 隔离收发器、CAN 控制器,因此可以直接连接 MCU 与 CAN 总线。

mcu

图 6  CSM300 与 CANFDSM 内部器件情况

以上讨论的情况是针对板载需求的应用,对于需要直接应用在设备中的场合又该如何选择呢?CANCOM 或者 CANFDCOM 绝对是您的首选。CANFDCOM 接口卡的 1~2 通道 CAN FD 接口均自带 2500VDC 电气隔离,静电等级为接触放电±8KV,浪涌±1KV,可有效避免因为不同节点地电位不同导致的回流损坏,特别适合于电动汽车与列车的测试。

mcu

图 7  串口转 CAN 设备

3.    应用电路

以 CANFDSM-100 为例 ,该类模块通用应用方式如下下。协议转换模块直接与 MCU 通过 UART 的 TX、RX 交叉连接通信,PIN3、PIN4 通过 CAN 隔离收发器 CTM3FD 连接到外部 CAN 总线上。需要注意的是,模块在使用前需要进行参数配置,使用 PIN7 使模块进入配置状态后再配合 MCU 的 AT 指令即可完整参数配置。此外,配合上位机软件亦可快速完成参数配置。

mcu

图 8  应用电路

mcu

图 9  CANFDSM-100 管脚定义

4.    协议转换格式

串口转 CAN 模块提供透明转换、透明带标识、自定义协议等转换形式,感兴趣的工程师可以参考往期文章了解。

来源:互联网

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

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分