一个嵌入式或者X86的工业控制板上,少不了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
没关系,CAN口不够不要紧,你还有UART跟SPI啊。
UART跟SPI是很通用的通讯接口,也是一种比较容易实现的通讯接口,在CAN口不够用时我们可以把UART或SPI转成CAN口来用,CSM300就是一款可以快速实现UART/SPI转CAN的模块。
CSM系列集成了32bit微处理器、CAN控制器、CAN收发器、电源电路、隔离电路、总线保护于一身,所有元器件布置在一个微型的封装模块之内。模块尺寸仅31.80×20.30×6.50mm,相当于一个DIP-24集成电路。麻雀虽小,五脏俱全,不需要连接任何外围元件,CSM系列即可以使设备通过SPI或UART端口连接到CAN-bus网络中,用户可以不深入了解CAN-bus的相关知识,利用此芯片操作CAN-bus就如同操作UART一样方便。
图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的工作模式
SPI转CAN模式,其硬件参考图如图4所示,在此工作模式下,CSM300(A)始终作为SPI从机,SPI限定工作在模式3(CPOL、CPHA均为1),数据长度限定为8位,MSB高位先传输。透明转换、透明带标识转换下最高通信速率为1.5Mbps,自定义协议转换最高通信速率为1Mbps。SPI主机可以发送数据至CAN总线端,且可接收CAN总线端收到的数据。此时UART接口无效,不会处理任何出现在UART接口的数据,也不会返回CAN总线端接收到的数据至UART。
图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字节。
自定义协议转换:自定义协议转换方式下,串行帧必须符合规定的帧格式。有效的串行帧由帧头、帧长度、帧类型、帧ID、数据域、帧尾。当用户发送的串行帧完全符合定义的格式时,CSM300(A)才会接收串行帧的数据并进行转发,否则不作任何处理直接丢弃。
CSM300模块带有配置工具CSM300CFG,用户可以使用此软件非常方便地对产品进行配置,同时软件提供用户当前选择配置的写配置命令帧的完整帧数据,用户可以直接复制到程序中使用,免除用户设定命令帧的繁琐工作。
图6 CSM300配置工具
为提高用户的开发效率,CSM300(A)系列产品配套了专用的CSM-Eval评估板,可用于CSM300(A)产品的配置及测试。通过全面的技术支持来解决工程师们UART/SPI转CAN的难题。
图7 CSM-Eval 评估板