【发布时间】:2015-01-12 20:38:52
【问题描述】:
我正在努力实现大陆 ARS308 雷达和 beaglebone black 之间的 CAN 总线通信。除了这两个设备之外,我还连接了 MCP2551 以将 CAN 信号转换为 Rx/Tx。 问题是在配置通信时(一旦安装了 lib-socket 和 can-utils 包):
- modprobe 可以
- modprobe can-dev
- modprobe can-raw
- ip link set can0 up type can bitrate 500000
到目前为止,一切似乎都运行良好,但是当 can 通信开始时:
- ifconfig can0 up
beaglebone 中 Rx 引脚(MCP2551 的 Rx 引脚)的信号波形发生变化,低电压电平在 2 伏以上。见下图。
http://imageshack.com/a/img910/3126/VufRWU.jpg
http://imageshack.com/a/img903/2530/eusAhX.jpg
通信开始后,测试 candump 命令表明它们不起作用。因为,在创建虚拟 CAN 端口时,这些工具(candump/cansend)工作,我猜这是电压水平的问题。可以看到,CAN通讯启动时,低电压电平在2V以上,beaglebone无法区分电平,什么也不读…… 有人遇到过这个问题吗?我已经尝试并搜索了很多,但没有任何东西对我有用。有什么可以帮助的想法吗?!
提前谢谢你!
【问题讨论】:
标签: c# beagleboneblack can-bus