目录
- 关键词
- 平台说明
- 一、前言
- 二、软件获取和安装
- 三、DBC的创建
- 3.1 主体创建
- 3.2 创建节点
- 3.3 创建Attribute Definitions
- 3.4 创建message(帧)
- 3.5创建 signals
- 3.6 创建value table
- 3.7 调整signal 在message 中的位置
- 3.8 一致性检查
关键词
嵌入式、C语言、autosar、OS、BSW
平台说明
项目 | Value |
---|---|
OS | autosar OS |
autosar厂商 | vector , |
芯片厂商 | TI 英飞凌 |
编程语言 | C,C++ |
编译器 | HighTec (GCC) |
>>>>>回到总目录<<<<<<
一、前言
在[AutoSar]BSW_Com03 DBC详解 (一)和[AutoSar]BSW_Com03 DBC详解 (二)中介绍了DBC文件夹结构和属性,这里详细介绍如何从零开始创建一个新的DBC文件。
二、软件获取和安装
软件名称:CANdb++,自行从Vector官网获取下载链接。安装简单,基本没啥问题。
三、DBC的创建
3.1 主体创建
1.file -->新建
2.选择CANTemplate.dbc,确定并保存。注意:保存路径不能存在中文。
3.2 创建节点
1.右键Network nodes,新建
2.重命名节点名称,这里新建了三个节点,VCU(应用报文和NM报文节点),UDS(诊断报文节点),XCP(标定报文节点)。根据实际需求增加或者删减节点。
3.3 创建Attribute Definitions
创建了Attribute Definitions 后才能修改帧类型,周期等参数
1.view --> Attribute Definitions
2.添加Attribute ,具体哪个definition代表什么意思请查看[AutoSar]BSW_Com03 DBC详解 (二)。
3.这里只添加了GenMsgSendType GenMsgCycleTime GenSigStartValue 三个Attribute Definitions。
3.4 创建message(帧)
1.右键message–>新建
2.修改属性
3.选择发送节点
方法1.
方法2:
3.5创建 signals
1.signals -> new
2.这里创建两个信号,一个CPU温度, 一个电压。
其中:
Factor和Offset的计算公式:[Physical value] = ( [Raw value] * [Factor] ) + [Offset]
例: 报文的真实值为1,Factor的值为2,Offset的值为1
我们收到的物理值为(1Factor)+Offset=(12)+1=3
字节顺序:
Intel格式:低字节在前,高字节在后,即Byte1为信号的低bit位,Byte2为高bit位。
Motorola格式:高字节在前,低字节在后,即Byte1为信号的高bit位,Byte2为低bit位。
3.关联signal 到message
方法1:
方法2:
3.6 创建value table
1.View -->value tables
2.
3.关联value table 到signals
3.7 调整signal 在message 中的位置
3.8 一致性检查
根据错误提示修改文件即可。
>>>>>回到总目录<<<<<<