ubuntu - socketCAN 与制造商的驱动程序

标签 ubuntu drivers can-bus socketcan

我对 socketCAN 和 CAN 制造商驱动程序之间的区别有点困惑。

我的 Ubuntu 机器上有一个 Kvaser 的 mPCIE CAN 卡。它带有自己的驱动程序,显然是基于 socketCAN 的。但是socketCAN带有标准的Ubuntu发行版,它也是CAN的驱动程序。我可以仅使用socketCAN读取CAN总线数据,甚至无需安装Kvaser的驱动程序。

所以我的问题是,当 socketCAN 可以单独处理通信时,安装制造商的 CAN 驱动程序有什么意义?

最佳答案

制造商的驱动程序正在使用socketCAN 功能。某些设备使用默认的 socketCAN 实现,但在大多数情况下,设备(在您的情况下为 mPCIE CAN 卡)依赖于固件正常工作的一些特殊命令。
您的 Kvaser 设备很可能工作正常,因为大多数 Kvaser 设备已经是 Linux 内核的一部分。
PCI 驱动程序位于 /lib/modules/KERNEL_VERSION/kernel/drivers/net/can

关于ubuntu - socketCAN 与制造商的驱动程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51208478/

相关文章:

ubuntu - 如何创建 crontab 作业以在服务器重启时启动 Monero 矿工?

apache - NGINX proxy_pass 到另一个端口

angular - Ansible:未找到ng

java - Cassandra CQL 驱动程序实现

x86 - 如何识别 x86 上的设备特定中断?

c++ - 如何在 C++ 中访问 dll 文件中的函数

python-3.x - 错误:can.socketcan.ctypes:Setting filters failed -1 Find out the can error frame

node.js - 如何从命令行或通过 npm 库打印 PDF 文件?

c# - 如何在 Windows 机器上制作虚拟扩展屏幕?

stm32 - 有STM32直连CAN收发器的CAN总线库吗?