详解UART转CAN应用方案

电子说

1.3w人已加入

描述

各位工程师是否遇到需要使用到CAN通信但缺少CAN接口的情况?最简便的方案是采用UART转CAN通讯。ZLG致远电子针对此应用CSM100系列模块解决方案,这款模块将极大的简化了开发流程,实现的方式是怎样的?本文为你详解。

一个嵌入式或者X86的工业控制板上,一般都会提供CAN、UART、以太网、USB、SPI、I2C等通讯接口,但是由于处理器的限制以及满足通用性需求,很多厂家只能均衡的去分配这些接口,比如致远电子旗下的部分工控核心板的接口就如下图所示:

uart

可以看到通用型核心板一般提供的CAN-bus为2路,2路CAN-bus可以有效的保证通用需求,但是在一些特殊的情况,应用中需求变成了4路甚至5路CAN的需求。这种情况下传统的板子的CAN接口资源就不够用了该怎么办呢?

致远电子推出的一款UART转CAN隔离模块——CSM100系列协议转换模块,其体积小巧,应用简单,品质可靠。该系列模块采用标准24引脚DIP封装,适用于大部分工业板级应用。在一些需要使用到CAN通信但缺少CAN接口的应用下,使用CSM100可以以最小的硬件更改,利用通用UART接口快速地实现CAN总线通信,节省软硬件开发成本,缩短开发周期。本文将对CSM100系列模块做一个简单的介绍,让你以最少时间玩转CSM100系列UART转CAN模块。

产品引脚定义

这里以CSM100-L为例,产品引脚定义如下图1、表1,系列其他型号定义基本一致。

uart

图1 引脚定义图

表1 引脚定义

uart

配置

在测试使用之前,CSM100系列产品需要先进行配置,以满足实际的应用需求。可配置的参数有转换方式、UART速率、CAN速率等。配置方式有两种:上位机配置方式、MCU配置方式。

1. 上位机配置方式

准备的工具:

  1. 电脑一台;
  2. 串口线一根;
  3. CSM-Eval 评估板一块;
  4. CSM100-L模块一片(其他型号均可);
  5. CSM300CFG软件;
  6. 电源适配器一个。

准备好以上所需工具后,即可对产品进行配置,具体步骤如下:

(1) 将电源适配器(9~12V)连接至评估板电源接口;

(2) 通过串口线(或USB转串口线)连接评估板与计算机COM口(或USB口);

图2 步骤(1)~(2)示意图

(3) 短接UART跳线;

(4) 根据产品型号选择产品工作电压;

(5) 放置需要配置的模块;

(6) 配置开关(CFG)选择0(使能配置),模式选择(MODE)固定选择0,BOOT固定选择1;

(7) 按下电源开关;

(8) 按下复位键,复位产品,产品将进入UART配置模式;

图3 步骤(3)~(8)示意图

(9) 打开计算机上位机配置软件CSM300CFG,产品选择CSM100;

(10) 选择与评估板连接的计算机COM串口号;

(11) 点击“连接设备”按钮;

(12) 连接成功后,设置需要配置的参数;

uart


图 4 步骤(9)~(12)示意图

(13) 参数设置完成,点击“写配置”按钮,软件提示“写配置成功!”;

图 5 配置成功

(14) 断开设备,配置开关(CFG)选择1(正常工作模式);

(15) 按下复位键,复位产品,产品将进入正常工作模式。

图6 步骤(14)~(15)

2. MCU配置方式

在实际产品中,可能需要不时更改CSM100的配置,此时,设计阶段即考虑增加通过MCU配置的功能,会使后续配置更改更加便捷。

实现MCU配置,硬件上需要符合图7所示连接。

uart

图7 可实现MCU配置的典型连接

使用MCU配置时模块UART接口波特率固定为9600bps。

CFG脚为输入引脚,其输入电平定义如表2所示。

表2 CFG脚电平定义

uart

设置好CFG脚电平后,给RST脚一个低电平脉冲信号让模块复位即可进入相应模式。

对CSM100进行写入配置时,CSM相应引脚时序应满足图8要求。

uart

图8 配置时序

写配置命令可以通过CSM300CFG软件获取。通过软件界面选择好需要的配置参数后,软件下方会显示出相应的命令帧数据,勾选代码模式即可获取相应的配置命令帧代码。发送配置命令后,模块会返回响应帧,如为0xF7 0xF8 0x01 0x13 0x1D则表示配置写入成功。

写入配置成功后,CFG引脚置1,RST复位,模块即可进入正常工作模式。

测试

CSM100配置完成后,即可对其进行简单的通信测试。通讯测试可准备以下工具:

  • 电脑一台;
  • USBCAN一台;
  • CSM-Eval评估板一块;
  • CSM100模块一块;
  • CANTest、SSCOM软件;
  • 串口线及USB线等。

假设模块型号为CSM100T,参数配置为:自定义协议转换、双向、帧头40、帧尾1A、串口波特率9600bps、CAN波特率125kbps、滤波器不使能,其他默认。如图9进行硬件连接。

图9 通讯测试连接图

打开CANTest测试软件,选择USBCAN2设备,CAN波特率125kbps,数据发送选择参数:标准帧、帧ID 00 00、数据00 01 02 03 04 05 06 07、单次发送10帧,如图10。

图10 USBCAN设备软件界面

打开SSCOM串口通讯软件,选择对应串口,设置波特率9600、数据位8、停止位1。打开串口后由USBCAN软件发送数据,则串口界面收到数据如图 11所示。若要通过串口向USBCAN设备发送数据,同样可在字符串输入框内输入要发送的数据,前提是必须满足格式要求,否则模块将不能转换。

图 11 串口接收数据

通过以上测试方式进行详细测试后,如满足设计需求则可应用于实际产品中去。

注意事项

  • 模块在“配置模式”和“正常工作”切换后应使模块复位,否则模块还处于原来的工作状态;
  • 配置时,UART的波特率为9600bps,无法更改;
  • CSM100、CSM100-L、CSM100V33仅支持透明转换及透明带标识转换;
  • CSM100T、CSM100TL仅支持自定义转换;
  • 产品不支持热插拔;
  • 未使用引脚请悬空处理;
  • 产品为ESD敏感器件,请做好防静电措施;
  • 产品供电电压切勿超过允许范围,以免损坏产品。
打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

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

×
20
完善资料,
赚取积分