canbus

SocketCAN如何获取操作结果
canbus

SocketCAN如何获取操作结果

是否可以获取 CAN 操作的状态? 操作示例: write(socket, &frame, sizeof(frame)); 是否可以使用 SocketCAN 检查帧是否已 ACK 或获取任何其他 CAN 状态信息? ...

Admin

ip link set can0 type 可以提供帮助 用法: ip link set DEVICE type can [ 比特率 BITRATE [ 采样点 SAMPLE-POINT] ] | [ tq TQ prop-seg PROP_SEG 相位段 1 相位段 1 相位段 2 相位段 2 [ sjw SJW ] ] [ dbitrate BITRATE [ dsample-point SAMPLE-POINT] ] | [ dtq TQ dprop-seg PROP_SEG dphase-seg1 PHASE-SEG1 dphase-seg2 PHASE-SEG2 [ dsjw SJW ] ] [ tdcv TDCV tdco TDCO tdcf TDCF ] [ 环回 { 上 | }关 } ] [ 只听 { 开 |关 } ] [ 三重采样 { 开 |关 } ] [ 一次性 { 开 | 关关闭 } ] [ berr 报告 { 开启 | 关闭关 } ] [ fd { 开 |关 } ] [ fd-non-iso { 开 | 关关 } ] [ 假定确认 { 开 |关 } ] [ cc-len8-dlc { 开 |关闭 } ] [ tdc 模式 { 自动 | 关闭手册| off } ] [ restart-ms TIME-MS ] [ restart ] [ 终止 { 0..65535 } ] 其中: BITRATE := { NUMBER in bps } SAMPLE-POINT := { 0.000..0.999 } TQ := { NUMBER in bps ns } PROP-SEG := { tq 中的数字 } PHASE-SEG1 := { tq 中的数字 } PHASE-SEG2 := { tq 中的数字 } SJW := { tq 中的数字 } TDCV := { tc 中的数字 } TDCO : = { tc 中的数字 } TDCF := { tc 中的数字 } 重新启动 MS := { 0 |数字(以毫秒为单位)}
canbus

ip link set can0 type 可以提供帮助 用法: ip link set DEVICE type can [ 比特率 BITRATE [ 采样点 SAMPLE-POINT] ] | [ tq TQ prop-seg PROP_SEG 相位段 1 相位段 1 相位段 2 相位段 2 [ sjw SJW ] ] [ dbitrate BITRATE [ dsample-point SAMPLE-POINT] ] | [ dtq TQ dprop-seg PROP_SEG dphase-seg1 PHASE-SEG1 dphase-seg2 PHASE-SEG2 [ dsjw SJW ] ] [ tdcv TDCV tdco TDCO tdcf TDCF ] [ 环回 { 上 | }关 } ] [ 只听 { 开 |关 } ] [ 三重采样 { 开 |关 } ] [ 一次性 { 开 | 关关闭 } ] [ berr 报告 { 开启 | 关闭关 } ] [ fd { 开 |关 } ] [ fd-non-iso { 开 | 关关 } ] [ 假定确认 { 开 |关 } ] [ cc-len8-dlc { 开 |关闭 } ] [ tdc 模式 { 自动 | 关闭手册| off } ] [ restart-ms TIME-MS ] [ restart ] [ 终止 { 0..65535 } ] 其中: BITRATE := { NUMBER in bps } SAMPLE-POINT := { 0.000..0.999 } TQ := { NUMBER in bps ns } PROP-SEG := { tq 中的数字 } PHASE-SEG1 := { tq 中的数字 } PHASE-SEG2 := { tq 中的数字 } SJW := { tq 中的数字 } TDCV := { tc 中的数字 } TDCO : = { tc 中的数字 } TDCF := { tc 中的数字 } 重新启动 MS := { 0 |数字(以毫秒为单位)}

我需要为 CANFD 总线设置采样点。以下帮助命令显示了如何为 can 设置样本点,但我的 can 配置未显示任何样本点参数 ip link set can0 type 可以提供帮助 用法: ip link set DEVICE type can [ 比特率 BITRATE [ 采样点 SAMPLE-POINT] ] | [ tq TQ prop-seg PROP_SEG 相位段 1 相位段 1 相位段 2 相位段 2 [ sjw SJW ] ] [ dbitrate BITRATE [ dsample-point SAMPLE-POINT] ] | [ d...

Admin

从驱动程序内部的 socketCAN 读取
canbus

从驱动程序内部的 socketCAN 读取

我正在尝试读取驱动程序内的 socketCAN 设备。 我正在设置一个 skb 并将其与相关信息一起传递给can_rx_register注册名为 的回调的调用sc_rcv。 // callback static void sc_rcv(struct sk_buff *skbr, void *data) // initialization result = can_rx_register(&init_net, dev, 10 | CAN_INV_FILTER, CAN_SFF_MASK, &sc_rcv, skb, "mycan", 0); ...

Admin

如何使用Linux验证CAN接口?
canbus

如何使用Linux验证CAN接口?

我想验证嵌入式系统上的 CAN 接口。它有两个 CAN 端口:can0和can1。 我按照以下顺序将它们都提出来: # ip link set can0 type can bitrate 1000000 dbitrate 2000000 fd on # ip link set can0 up # ip link set can1 type can bitrate 1000000 dbitrate 2000000 fd on # ip link set can1 up 我将它们相互连接起来(CANH<-> CANH、CANL<->CA...

Admin

让 Waveshare CAN HAT 在 Banana Pi BPI-M2 Zero 上工作
canbus

让 Waveshare CAN HAT 在 Banana Pi BPI-M2 Zero 上工作

Waveshare 为 Raspberry Pi 制作了一个很棒的 CAN HAT(请参阅这里),但该说明仅适用于 Raspberry Pi OS,不适用于 Armbian。 Banana Pi BPI-M2 Zero 具有与 Raspberry Pi 相同的引脚布局,但运行 Armbian。如何使用 Armbian 的覆盖系统设置 Waveshare CAN HAT? ...

Admin

有关 Debian GNU/Linux 10 (buster) Linux 4.19.94-ti-r42 上的 can、can-dev 内核模块的信息
canbus

有关 Debian GNU/Linux 10 (buster) Linux 4.19.94-ti-r42 上的 can、can-dev 内核模块的信息

我似乎缺少几个内核模块。具体来说,can并且can_dev。当我运行modprobe can或 时,模块不会加载modprobe can-dev。 我认为这是因为模块不在目录中 [/lib/modules/4.19.94-ti-r42/kernel/drivers/net/can]$ ls slcan.ko.xz spi usb vcan.ko.xz 唯一加载的 CAN 模块是can_raw,它似乎与 SocketCAN 一起工作得很好。我的问题是我正在尝试使用价值CAN这取决于 2 个模块。 我尝试下载内核,当我运行时menuconfig,我没有看...

Admin

11 位模式下的 CANbus 适配器内容
canbus

11 位模式下的 CANbus 适配器内容

我有一个 PEAK canbus 适配器 (USB) 连接到我的 Linux 盒子,可以从 Qt C++ 程序访问。虽然一切正常,但当我收到帧时,它们都是 SFF(11 位)ID。 candump 都是 11 位 ID。即使我发送 EFF(29 位)帧,它也只显示 SFF 中的传入帧。 如果我使用 candump,也会发生同样的情况,所有帧都显示 SFF ID。 然而,当我将笔记本电脑切换到 Windows 并运行 PEAK 查看器,然后返回 Linux 后,突然我的帧全部显示在 candump 中的 EFF 中。 我需要设置什么(在 Linux/ip co...

Admin

一致/持久的网络连接命名,如 udev
canbus

一致/持久的网络连接命名,如 udev

我有多个类似的 USB 网络设备,在这种情况下 CAN(can0 和 can1)连接到不同的网络,但我认为这与多个其他网络(例如 WiFi、以太网等)有类似的问题。这些当前显示为 can0 和 can1,我可能会连接更多。 我试图在访问每个位置的位置保持某种持久性。对于使用 udev 的非网络设备,允许将自定义符号链接引用到 idVendor、idProduct 和序列号,以便我可以确保正确的代码访问正确的设备。 ifconfig 下的设备如何实现类似的持久性?我有每个 ID 和序列详细信息可供参考 我不希望设备 x 始终为 can0 而设备 y 始终为 c...

Admin

systemd-networkd-wait-online 因 SocketCAN 接口而失败
canbus

systemd-networkd-wait-online 因 SocketCAN 接口而失败

我已经配置了一个 SocketCAN 接口can0(使用 确认工作can-utils)。我有以下.network配置文件,以便systemd-networkd在启动时显示界面。 #/etc/systemd/network/80-can.network [Match] Name=can0 [CAN] BitRate=250K RestartSec=100ms [Link] Unmanaged=no RequiredForOnline=yes 启动后,我可以看到接口已启动(注意UP标志设置) $ ip link show can0 5: can0: &lt...

Admin

Virtualbox Linux 添加 SocketCAN 接口
canbus

Virtualbox Linux 添加 SocketCAN 接口

有人有在 Virtualbox 中使用 SocketCAN 的经验吗?我用的是Xubuntu。我首先对 can、can_raw、can_dev 以及我正在使用的特定 can 模块的相关驱动程序进行 modprobing。此外,我还指示 Virtualbox 通过我想要连接的 CAN-USB 设备。 当我运行命令时sudo ip link set can0 type can bitrate [bitrate],我得到:找不到设备“can0”。我检查了/dev,没有发现任何与CAN相关的内容。 我运行了一下sudo dmesg | grep 'usb',看起来它...

Admin

无法在 Beaglebone black 上调出 CANbus 接口
canbus

无法在 Beaglebone black 上调出 CANbus 接口

为了在启动时自动调出界面,我对文件进行了/etc/network/interfaces如下编辑: debian@beaglebone:~$ sudo nano /etc/network/interfaces 并在文件末尾添加以下内容: auto can1 iface can1 inet manual pre-up /sbin/ip link set can1 type can bitrate 250000 #triple-sampling on restart-ms 100 up /sbin/ifconfig can1 up down...

Admin

清除CAN适配器的套接字缓冲区
canbus

清除CAN适配器的套接字缓冲区

我有一个 USB/CAN 适配器,来自lsusb: OpenMoko, Inc. Geschwister 施耐德 CAN 适配器 它提供了一个套接字接口,来自ip addr: 5: can0: <NOARP,UP,LOWER_UP,ECHO> mtu 16 qdisc pfifo_fast state UP group default qlen 10 link/can 总线上还有其他设备不断发送数据。如果我重新启动电脑,我将无法再发送/接收数据,因为出现以下错误: 没有可用的缓冲空间 我猜想,当设备与 PC“断开连接”时(因为它正在重...

Admin

在系统上,两个 CAN 端口可以具有相同的 CAN-id 吗?
canbus

在系统上,两个 CAN 端口可以具有相同的 CAN-id 吗?

如果有两个CAN口的设备有相同的CAN-id,会不会造成麻烦? 由于某种原因,网络是分开的,但两个网络的“主”应该是相同的。 编辑:在网络拓扑下方。 ("master") CAN-BUS 0 +----------+ +----------+ |------->| CAN-ID 2 | | |<------| +----------+ | CAN-ID 1 | | |<------| +----------+ +----------+ |-...

Admin

MCP251x 驱动程序丢失
canbus

MCP251x 驱动程序丢失

mcp251x我正在尝试在内核为 4.9.253-tegra 的 Linux 系统上安装驱动程序,我使用了以下命令: # modprobe mcp251x 我用命令检查了 # dmesg | grep mcp251x 但它没有显示任何内容。 驱动程序存在于文件夹中, /lib/modules/4.9.253-tegra/kernel/drivers/net/can/spi/mcp251x.ko 即使这样它也不会加载。 如何在这个内核版本中正确安装这个驱动? 编辑: 我使用jetson内核4.9.253-tegra 我用 modprobe 插入...

Admin

Udev 规则将 USB 连接到 CAN Lawicell
canbus

Udev 规则将 USB 连接到 CAN Lawicell

我正在使用 Lawicel CAN 适配器连接到传感器,并希望设置 udev 规则以避免手动 can 设置。 手册可以设置: sudo slcand -o -c -f -s6 /dev/ttyUSB0 slcan0 sudo ifconfig slcan0 up 运行candump slcan0通过打印数据表明连接有效。 因此,我正在遵循设置 udev 规则的指南关联。但这行不通。 udev规则是 # Lawicel CANUSB module ACTION=="add", ENV{ID_MODEL}=="CANUSB", ENV{SUBSYSTEM}==...

Admin