[评测分享]
【更适合初学者的开发板ELF 1】03-CAN通讯测试
#板卡评测
2125 人阅读
|
2 人回复
|
2023-11-23
TA的每日心情 | 慵懒 2025-8-6 21:07 |
|---|
签到天数: 313 天 连续签到: 1 天 [LV.8]以坛为家I
状元
- 积分
- 5300
|
本帖最后由 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,今天就到这。
话说坛子的敏敢磁还真不少啊,动不动就是******************
|
|
|
|
|
|
|
|
|
TA的每日心情 | 慵懒 2025-8-6 21:07 |
|---|
签到天数: 313 天 连续签到: 1 天 [LV.8]以坛为家I
状元
- 积分
- 5300
|
沙发
stm1024
发表于 2023-11-24 09:16:56
|
只看该作者
|
|
|
|
|
|
|
|
TA的每日心情 | 开心 2025-9-22 14:13 |
|---|
签到天数: 335 天 连续签到: 1 天 [LV.8]以坛为家I
状元
- 积分
- 8304

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