name: can-bus description: CAN/CAN-FD总线分析与开发专业知识 category: 通信协议 allowed-tools:
- Bash
- Read
- Write
- Edit
- Glob
- Grep
CAN总线技能
概述
本技能为汽车和工业嵌入式系统提供全面的CAN和CAN-FD总线分析、开发和调试能力。
能力
消息帧操作
- CAN消息帧生成
- 帧分析与解码
- 标识符过滤与掩码
- 标准(11位)和扩展(29位)ID
- 远程帧处理
DBC文件支持
- DBC文件解析与生成
- 信号解码与编码
- 消息定义管理
- 物理值缩放
- 多路复用信号支持
协议支持
- CAN 2.0A/B合规性
- CAN-FD配置与验证
- J1939传输协议
- CANopen通信
- UDS(ISO 14229)诊断
- ISO-TP(ISO 15765-2)
总线分析
- 总线仲裁分析
- 错误帧检测与分析
- 总线关闭恢复监控
- 总线负载计算
- 位时序验证
- 网络拓扑分析
网关操作
- 消息路由配置
- 网关桥接设置
- 协议转换
- 过滤与转发规则
目标流程
device-driver-development.js- CAN驱动程序实现signal-integrity-testing.js- CAN总线信号验证hw-sw-interface-specification.js- CAN接口定义functional-safety-certification.js- CAN安全要求
依赖项
- CAN接口工具(PEAK、Vector、Kvaser)
- 用于信号解码的DBC文件
- CAN分析仪硬件
- SocketCAN(Linux)
使用场景
本技能在以下任务需要时被调用:
- CAN驱动程序开发
- 总线通信调试
- 基于DBC的信号分析
- 协议栈实现
- 汽车网络
配置示例
CAN位时序
can:
bitrate: 500000 # 500 kbps
sample_point: 87.5
sjw: 1
seg1: 13
seg2: 2
prescaler: 4
CAN-FD配置
can_fd:
nominal_bitrate: 500000
data_bitrate: 2000000
brs: enabled # 比特率切换
esi: enabled # 错误状态指示器
DBC信号定义
BO_ 0x123 EngineData: 8 ECU
SG_ EngineRPM : 0|16@1+ (0.25,0) [0|16383.75] "rpm" Vector__XXX
SG_ EngineTemp : 16|8@1+ (1,-40) [-40|215] "C" Vector__XXX