2回答

0收藏

[评测分享] 【更适合初学者的开发板ELF 1】03-CAN通讯测试

#板卡评测 #板卡评测 2124 人阅读 | 2 人回复 | 2023-11-23

本帖最后由 stm1024 于 2023-11-24 09:20 编辑

今天抽空测试了一下CAN通讯,CAN通讯在汽车和工业自动化上的应用还是很多的,因此是一个很值得学习的协议,今天晚上测试了一下ELF-1开发板上的CAN通讯接口。

1. 线路连接
线路连接起来很方便,只需要将左下方的凤凰端子,CAN-H和采集卡上的CAN-H连接,CAN-L和采集卡上的CAN-L连接即可,GND一般是接屏蔽线,在短距离通讯的时候可以不用接。

然后使用上位机打开CAN采集卡,用250kbps波特率。
2. CAN外设配置及测试
现在linux都使用的是ip link方式配置这些以太网和CAN,ELF-1开发板上是支持两路CAN的,但是底板本身只有一路CAN0,CAN1应该是在左边的40排针上,通过扩展板引出的,而且,这个针脚是没有CAN收发器的,因此,我这里先使用带收发器的这一路CAN,启动CAN比较简单,几条命令就可以:

第一句是先关闭CAN0,这样才能配置,第二句是配置CAN的波特率,这里使用的是250kbps,第三句是启动CAN0,第四句是通过can util工具包中的cangen生成随机can报文,报文周期为100ms。
CANTest上接收到的数据如下:

还可以新开一个终端,然后再里面使用命令:
candump can0
接收报文,效果如下:

可见报文收发功能正常。

3. CAN1的测试
CAN1虽然没有物理层,但是我们可以使用环回loopback测试,配置及测试截图如下:




当然还有一种方式,不需要开启环回也可以测试的,那就是使用了CAN1的TX和RX。通常我们采集到的报文是CAN信号经过收发器调制成差分信号的,其实CAN控制器最后也就是TX和RX,这点基本上和RS232/485之于USART的关系。所以,我们完全可以将CAN的TX和RX短接起来,也就是这样:


然后再测试一次,这次不开环回模式:



可见同样可以正常收发CAN报文。
这个开发板的这种方式也挺好,对于想深入学习分析CAN通讯协议的童鞋来说比较方便,从协议层到数据链路层都可以方便学习测试。不过现在很多微控制器都在推CAN-FD了,但是imx6ULL目前还不支持这个协议,略有遗憾。

OK,今天就到这。
话说坛子的敏敢磁还真不少啊,动不动就是******************
分享到:
回复

使用道具 举报

回答|共 2 个

倒序浏览

沙发

stm1024

发表于 2023-11-24 09:16:56 | 只看该作者


回复 支持 反对

使用道具 举报

板凳

xiaoshen-372360

发表于 2023-11-24 11:20:54 | 只看该作者

支持一下大佬
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 注册/登录

本版积分规则

5300 积分
55 主题
+ 关注
热门推荐
关闭

站长推荐上一条 /3 下一条