电子说
各位工程师是否遇到需要使用到CAN通信但缺少CAN接口的情况?最简便的方案是采用UART转CAN通讯。ZLG致远电子针对此应用CSM100系列模块解决方案,这款模块将极大的简化了开发流程,实现的方式是怎样的?本文为你详解。
一个嵌入式或者X86的工业控制板上,一般都会提供CAN、UART、以太网、USB、SPI、I2C等通讯接口,但是由于处理器的限制以及满足通用性需求,很多厂家只能均衡的去分配这些接口,比如致远电子旗下的部分工控核心板的接口就如下图所示:
可以看到通用型核心板一般提供的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,系列其他型号定义基本一致。
图1 引脚定义图
表1 引脚定义
配置
在测试使用之前,CSM100系列产品需要先进行配置,以满足实际的应用需求。可配置的参数有转换方式、UART速率、CAN速率等。配置方式有两种:上位机配置方式、MCU配置方式。
1. 上位机配置方式
准备的工具:
准备好以上所需工具后,即可对产品进行配置,具体步骤如下:
(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) 连接成功后,设置需要配置的参数;
图 4 步骤(9)~(12)示意图
(13) 参数设置完成,点击“写配置”按钮,软件提示“写配置成功!”;
图 5 配置成功
(14) 断开设备,配置开关(CFG)选择1(正常工作模式);
(15) 按下复位键,复位产品,产品将进入正常工作模式。
图6 步骤(14)~(15)
2. MCU配置方式
在实际产品中,可能需要不时更改CSM100的配置,此时,设计阶段即考虑增加通过MCU配置的功能,会使后续配置更改更加便捷。
实现MCU配置,硬件上需要符合图7所示连接。
图7 可实现MCU配置的典型连接
使用MCU配置时模块UART接口波特率固定为9600bps。
CFG脚为输入引脚,其输入电平定义如表2所示。
表2 CFG脚电平定义
设置好CFG脚电平后,给RST脚一个低电平脉冲信号让模块复位即可进入相应模式。
对CSM100进行写入配置时,CSM相应引脚时序应满足图8要求。
图8 配置时序
写配置命令可以通过CSM300CFG软件获取。通过软件界面选择好需要的配置参数后,软件下方会显示出相应的命令帧数据,勾选代码模式即可获取相应的配置命令帧代码。发送配置命令后,模块会返回响应帧,如为0xF7 0xF8 0x01 0x13 0x1D则表示配置写入成功。
写入配置成功后,CFG引脚置1,RST复位,模块即可进入正常工作模式。
测试
CSM100配置完成后,即可对其进行简单的通信测试。通讯测试可准备以下工具:
假设模块型号为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 串口接收数据
通过以上测试方式进行详细测试后,如满足设计需求则可应用于实际产品中去。
注意事项
全部0条评论
快来发表一下你的评论吧 !