SDK 介绍
KH-UCANFD_Linux_SDK 是专为鲲弘 CAN FD 系列硬件深度定制的高性能驱动开发套件。 SDK 基于标准 SocketCAN 架构,解决了 Linux 社区原生 CAN 驱动在高负载下的性能瓶颈,显著提升了数据吞吐量并大幅降低了系统 CPU 占用率。
性能表现:原厂 SDK vs. 社区原生驱动
以下数据基于 KH-UCANFDX6-Mini 在 Ubuntu 22.04 (Kernel 6.8.0) 环境下的实测对比。
关键指标对比
| 测试指标 | Linux 社区原生驱动 | KH-UCANFD 优化 SDK | 提升幅度 |
|---|---|---|---|
| CAN FD 峰值帧率 (1M/5M) | 2,800 帧 / 秒 | 20,500+ 帧 / 秒 | ~ 7.3 倍 |
| 总线负载能力 (1M/5M) | 约 14% (出现丢帧) | 100% 满负载 | 达到物理极限 |
| 系统 CPU 开销 | 单核占用 > 50% | 无明显占用 | 降低 85% 以上 |

核心优势
标准协议兼容
完全支持 SocketCAN 标准接口,无缝衔接 cansend、candump 等工具及 python-can 库。

极致性能表现
针对多通道大流量并发场景优化,支持 CAN FD 总线满负载运行。
低系统损耗
相比原生驱动,CPU 占用率降低约 85%。
广泛的环境适配
- 架构:支持 X86_64、ARM32、ARM64 架构
- 内核:横跨 Linux 2.6.x 至 6.x 全版本
- Linux实时扩展:完美适配 Xenomai 与 RTAI (RTDM)
部署灵活
以源码形式发布,支持本地编译与交叉编译。
硬件支持
适配鲲弘 CAN FD 系列硬件设备:
- KH-UCANFD-Mini 系列(如: 6 通道高性能接口卡)
- KH-UCANFD-PCIe/USB 系列
兼容型号更多设备支持请参考《产品选型手册》。
专属监控工具
为了方便开发者调试,SDK 随附两款针对硬件特性定制的命令行工具:
- lskcan:快速列出并配置所有 KH-UCAN 设备状态
- kcan_monitor:实时监测CAN总线状态以及数据帧统计信息