nvidia xavier平台CAN控制器调试记录
1. 前言
由于需要接收车辆的CAN信息,就需要CAN收发功能;
正好xavier平台自带两路CAN控制器;
以下是驱动调试记录
2. 硬件连接
CAN总线获得数据使用OBD2;
连接2个CAN收发器
3. CAN配置
#check current values of related registers
sudo busybox devmem 0x0c303000
sudo busybox devmem 0x0c303008
sudo busybox devmem 0x0c303010
sudo busybox devmem 0x0c303018
#0x0000C055
#0x0000C055
#0x0000C059
#0x0000C059
#use devmem to modify registers
sudo busybox devmem 0x0c303000 32 0x0000C400
sudo busybox devmem 0x0c303008 32 0x0000C458
sudo busybox devmem 0x0c303010 32 0x0000C400
sudo busybox devmem 0x0c303018 32 0x0000C458
#check modified values of relate registers
sudo busybox devmem 0x0c303000
sudo busybox devmem 0x0c303008
sudo busybox devmem 0x0c303010
sudo busybox devmem 0x0c303018
#0x0000C400
#0x0000C458
#0x0000C400
#0x0000C458
#or use modeprobe to mount CAN controller
sudo modprobe can
sudo modprobe can-raw
sudo modprobe can-dev
sudo modprobe mttcan
#configure CAN controllers with 1Mbps baudrate
sudo ip link set can0 type can bitrate 1000000
sudo ip link set can1 type can bitrate 1000000
#loopback test
sudo ip link set can0 type can bitrate 1000000 loopback on
sudo ip link set can1 type can bitrate 1000000 loopback on
#open CAN controller
sudo ip link set up can0
sudo ip link set up can1
4. 疑问
(1)疑问1
当我测试环回模式,即使我没有附加CAN收发器到xavier,为什么can0和can1检测到?
(2)疑问2
我用以下命令配置了1Mbps波特率的CAN控制器,并使用CAN -utils发送数据包。
使用 “candump can0”,
没有收到任何信息。
(3)疑问3
尝试连接OBD2到DB9电缆,,并尝试用wireshark获取CAN数据包。
但是没有拿到包。
对OBD&CAN有什么使用建议?
这是一个终端,在循环返回模式测试。
5.调试建议
与nvidia fae沟通之后有如下建议
这是控制器环回测试。不需要收发器连接。它发送消息并检查msg并在RX行中将其发送回来。所以,你一定是Xavier CAN引脚的Tx和Rx短路了,所以你正在接收消息。这就意味着CAN 配置也都没问题。
如果没有接收到带有收发器的消息,请再次检查连接。
短CANH到CANH和CANL到CANL总线连接。
此外,检查120欧姆终止之间的CANH和CANL。
另外,看看统计数据是怎么说的:
ip -d -s link show can0
ip -d -s link show can1
6. 测试
这是我做的一个测试
测试两个CAN控制器如果你已经配置了硬件收发器电路。
根据这个github,我应该收到“can0 5A1[8] 11 22 33 44 55 66 77 88”。但我没有收到。
下图显示了' ip -d -s link show can0 '和' can1 '
7. 解决办法
将CANH连接到CANH,把CANL连接到CANL
与DB9连接器(银色连接器与绿色,蓝色,黄色,紫色线连接)
测试正常
所以硬件没问题
8. 如何使用CAN FD?
在CAN FD上有很多线程。
$ip link set can0 up type can bitrate 1000000 dbitrate 2000000 fd on berr-reporting on
从can0发送FD帧:
cansend can0 123 # # 1 abcdabcd
- 分享
- 举报
-
浏览量:8636次2021-03-16 14:44:24
-
浏览量:9407次2021-04-27 17:56:41
-
浏览量:7417次2021-05-11 17:51:48
-
浏览量:7481次2021-05-20 17:08:14
-
浏览量:9388次2021-05-25 17:31:40
-
浏览量:7084次2021-05-20 16:37:42
-
浏览量:7906次2021-05-25 15:32:16
-
浏览量:9219次2021-05-19 17:32:00
-
浏览量:8583次2021-05-14 14:43:43
-
浏览量:11439次2021-02-05 14:30:37
-
浏览量:9456次2021-05-26 14:17:15
-
浏览量:8730次2021-01-15 16:31:31
-
2021-01-16 14:38:27
-
2021-05-06 16:03:00
-
浏览量:10848次2021-05-06 16:22:01
-
浏览量:5249次2021-05-10 17:48:42
-
浏览量:7087次2021-05-11 17:04:57
-
浏览量:7369次2021-05-27 16:16:56
-
浏览量:12721次2021-02-26 11:19:50
-
广告/SPAM
-
恶意灌水
-
违规内容
-
文不对题
-
重复发帖
free-jdx
感谢您的打赏,如若您也想被打赏,可前往 发表专栏 哦~
举报类型
- 内容涉黄/赌/毒
- 内容侵权/抄袭
- 政治相关
- 涉嫌广告
- 侮辱谩骂
- 其他
详细说明