目录
- 关键词
- 平台说明
- 一、DBC创建时的区别
- 二.分别生成一个空白模板
- 三、CAN 2.0 转为 CANFD
- 3.1 用文本工具打开需要转换的CAN2.0DBC文件
- 四、CAN 2.0 转为 CANFD
关键词
嵌入式、C语言、autosar、OS、BSW
平台说明
| 项目 | Value |
|---|---|
| OS | autosar OS |
| autosar厂商 | vector , |
| 芯片厂商 | TI 英飞凌 |
| 编程语言 | C,C++ |
| 编译器 | HighTec (GCC) |
>>>>>回到总目录<<<<<<
一、DBC创建时的区别
1.在创建DBC的时候,CAN 2.0 选择的模板为CANTemplate.dbc,而CANFD 选择的为CAN_FD Template.dbc.
二.分别生成一个空白模板
从上图可以看出,CAN2.0 和CANFD 的区别。
三、CAN 2.0 转为 CANFD
3.1 用文本工具打开需要转换的CAN2.0DBC文件
找到BA_DEF_ “BusType” STRING ; BA_DEF_DEF_ “BusType” “CAN”;
替换为下文:
BA_DEF_ BO_"CANFD_BRS"ENUM"0","1";BA_DEF_"DBName"STRING;BA_DEF_"BusType"STRING;BA_DEF_ BU_"NodeLayerModules"STRING;BA_DEF_ BU_"ECU"STRING;BA_DEF_ BU_"CANoeJitterMax"INT00;BA_DEF_ BU_"CANoeJitterMin"INT00;BA_DEF_ BU_"CANoeDrift"INT00;BA_DEF_ BU_"CANoeStartDelay"INT00;BA_DEF_ BO_"VFrameFormat"ENUM"StandardCAN","ExtendedCAN","reserved","reserved","reserved","reserved","reserved","reserved","reserved","reserved","reserved","reserved","reserved","reserved","StandardCAN_FD","ExtendedCAN_FD";BA_DEF_DEF_"CANFD_BRS""1";BA_DEF_DEF_"DBName""";BA_DEF_DEF_"BusType""";BA_DEF_DEF_"NodeLayerModules""";BA_DEF_DEF_"ECU""";BA_DEF_DEF_"CANoeJitterMax"0;BA_DEF_DEF_"CANoeJitterMin"0;BA_DEF_DEF_"CANoeDrift"0;BA_DEF_DEF_"CANoeStartDelay"0;BA_DEF_DEF_"VFrameFormat""StandardCAN";BA_"BusType""CAN FD";BA_"DBName""CANFD";注意:BA_DEF_DEF_ 后面接的 Attribute Definitions 记得替换。以前can2.0 的Attribute Definitions 和 BA_DEF_ SG_、BA_DEF_ BO_记得保留。
四、CAN 2.0 转为 CANFD
按照第三节反着来就行,
注意事项:
1.DLC大于8的需手动调整。
2.CANFD才有的Attribute Definitions 必须删除。
3.别忘了一致性校验。
>>>>>回到总目录<<<<<<