目录
- 关键词
- 平台说明
- 一、前言
- 二、软件获取和安装
- 三、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 一致性检查

根据错误提示修改文件即可。
>>>>>回到总目录<<<<<<