CAN口不够用了怎么办?
扫描二维码
随时随地手机看文章
随着“智能制造”口号的实施跟相关产业的发展,CAN总线作为国际公认的三大工业总线之一,在智能机器人、新能源汽车上用得越来越多,但是很多工程师在项目开发过程中都会遇到:CAN接口不够用了怎么办?
一个嵌入式或者X86的工业控制板上,一般都会提供CAN、UART、以太网、USB、SPI、I2C等通讯接口,但是由于处理器的限制以及满足通用性需求,很多厂家只能均衡的去分配这些接口,比如致远电子旗下的部分工控核心板的接口就如表1所示:
表1 致远核心板部分通讯接口详情
可以看到通用型核心板一般提供的CAN-bus为2路,2路CAN-bus可以有效的保证通用需求,但是在一些特殊的情况,特别是新能源行业以及智能机器人行业日益发展的情况下,比如新能源汽车,由于电气化程度的提高以及传感器技术的增加,车身总线很多由之前的2路CAN(500K波特率的高速CAN跟250K波特率的低速CAN)的需求变成了4路甚至5路CAN的需求。这种情况下对车身ECU的CAN接口就有了新的要求,那传统的板子的CAN口不够用了该怎么办呢?
图1
图2 CSM300模块
CSM300的产品特性:
SPI或UART与CAN接口的双向数据通信;
CAN接口符合“ISO 11898-2”标准;
SPI最高速率可达1.5Mbit/s;
UART最高速率可达921.6kbps;
CAN最高速率可达1Mbit/s;
隔离耐压2500VDC;
工作温度:-40℃~+85℃。
CSM300(A)具有3种接口。一种是SPI接口,一种是UART接口,另外一种是CAN接口。其引脚排列如图3所示:
图3 CSM300引脚排列
CSM300的工作模式
图4 SPI转CAN硬件电路参考图
UART转CAN模式,硬件电路参考图如图5所示,在此模式下,CSM300(A)只能通过UART向CAN总线端发送或接收数据。UART通信格式固定为:1起始位,8数据位,1停止位,不可更改。UART的通信速率范围为300bps~921600bps。此模式下,SPI接口无效,不会处理任何出现在SPI接口的数据,也不会返回CAN总线端接收到的数据至SPI。
图5 UART转CAN硬件电路参考图
数据转换模式
CSM300(A)的数据转换方式有三种:透明转换、透明带标识转换、自定义协议转换。
透明转换模式:是指任何一侧总线只要接收到数据,即立刻发送至另一侧总线上,数据不做任何处理。透明转换方式下,CSM300(A)无需对数据进行额外处理,最大限度地提高了数据转换速度,也提高了缓冲区的利用率,因为在接收的同时CSM300(A)也在转换并发送,又空出了可以接收的缓冲区。
透明带标识转换:透明带标识转换,是在透明转换的基础上衍生而来,是指发送或接收的串行帧中都包含了有效的CAN帧ID字节。
图6 CSM300配置工具
为提高用户的开发效率,CSM300(A)系列产品配套了专用的CSM-Eval评估板,可用于CSM300(A)产品的配置及测试。通过全面的技术支持来解决工程师们UART/SPI转CAN的难题。
图7 CSM-Eval 评估板