[AutoSar]BSW_Com04 从零开始创建DBC文件

2024-02-29 05:12

本文主要是介绍[AutoSar]BSW_Com04 从零开始创建DBC文件,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目录

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

在这里插入图片描述
根据错误提示修改文件即可。

>>>>>回到总目录<<<<<<

这篇关于[AutoSar]BSW_Com04 从零开始创建DBC文件的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/757670

相关文章

Python中使用uv创建环境及原理举例详解

《Python中使用uv创建环境及原理举例详解》uv是Astral团队开发的高性能Python工具,整合包管理、虚拟环境、Python版本控制等功能,:本文主要介绍Python中使用uv创建环境及... 目录一、uv工具简介核心特点:二、安装uv1. 通过pip安装2. 通过脚本安装验证安装:配置镜像源(可

Java中实现线程的创建和启动的方法

《Java中实现线程的创建和启动的方法》在Java中,实现线程的创建和启动是两个不同但紧密相关的概念,理解为什么要启动线程(调用start()方法)而非直接调用run()方法,是掌握多线程编程的关键,... 目录1. 线程的生命周期2. start() vs run() 的本质区别3. 为什么必须通过 st

Macos创建python虚拟环境的详细步骤教学

《Macos创建python虚拟环境的详细步骤教学》在macOS上创建Python虚拟环境主要通过Python内置的venv模块实现,也可使用第三方工具如virtualenv,下面小编来和大家简单聊聊... 目录一、使用 python 内置 venv 模块(推荐)二、使用 virtualenv(兼容旧版 P

详解如何使用Python从零开始构建文本统计模型

《详解如何使用Python从零开始构建文本统计模型》在自然语言处理领域,词汇表构建是文本预处理的关键环节,本文通过Python代码实践,演示如何从原始文本中提取多尺度特征,并通过动态调整机制构建更精确... 目录一、项目背景与核心思想二、核心代码解析1. 数据加载与预处理2. 多尺度字符统计3. 统计结果可

Linux lvm实例之如何创建一个专用于MySQL数据存储的LVM卷组

《Linuxlvm实例之如何创建一个专用于MySQL数据存储的LVM卷组》:本文主要介绍使用Linux创建一个专用于MySQL数据存储的LVM卷组的实例,具有很好的参考价值,希望对大家有所帮助,... 目录在Centos 7上创建卷China编程组并配置mysql数据目录1. 检查现有磁盘2. 创建物理卷3. 创

Java 如何创建和使用ExecutorService

《Java如何创建和使用ExecutorService》ExecutorService是Java中用来管理和执行多线程任务的一种高级工具,可以有效地管理线程的生命周期和任务的执行过程,特别是在需要处... 目录一、什么是ExecutorService?二、ExecutorService的核心功能三、如何创建

使用Python创建一个功能完整的Windows风格计算器程序

《使用Python创建一个功能完整的Windows风格计算器程序》:本文主要介绍如何使用Python和Tkinter创建一个功能完整的Windows风格计算器程序,包括基本运算、高级科学计算(如三... 目录python实现Windows系统计算器程序(含高级功能)1. 使用Tkinter实现基础计算器2.

CentOS和Ubuntu系统使用shell脚本创建用户和设置密码

《CentOS和Ubuntu系统使用shell脚本创建用户和设置密码》在Linux系统中,你可以使用useradd命令来创建新用户,使用echo和chpasswd命令来设置密码,本文写了一个shell... 在linux系统中,你可以使用useradd命令来创建新用户,使用echo和chpasswd命令来设

使用Python和Pyecharts创建交互式地图

《使用Python和Pyecharts创建交互式地图》在数据可视化领域,创建交互式地图是一种强大的方式,可以使受众能够以引人入胜且信息丰富的方式探索地理数据,下面我们看看如何使用Python和Pyec... 目录简介Pyecharts 简介创建上海地图代码说明运行结果总结简介在数据可视化领域,创建交互式地

idea中创建新类时自动添加注释的实现

《idea中创建新类时自动添加注释的实现》在每次使用idea创建一个新类时,过了一段时间发现看不懂这个类是用来干嘛的,为了解决这个问题,我们可以设置在创建一个新类时自动添加注释,帮助我们理解这个类的用... 目录前言:详细操作:步骤一:点击上方的 文件(File),点击&nbmyHIgsp;设置(Setti