DaVinci工具链之DaVinci Configurator工程创建

news2024/9/25 1:19:37

目录

1、用DaVinci Configurator新建项目工程​编辑

2、用DaVinci Developer打开GL_Demo项目工程​编辑

3、在DaVinci Developer中新建一个调光控制模块

3.1.创建SWC Types

3.1.1.创建调光控制模块Composition SWC Type

3.1.2.创建调光分析计算Application SWC Type

3.1.3.创建左门开关传感器和右门开关传感器SensorActuator SWC Type 

3.1.4.创建执行器左顶灯SensorActuator SWC Type  

3.2.创建应用数据类型Application Data Types(ADT) 

3.2.1.创建左门开关状态(Variable)和右门开关状态(Variable)需要使用的应用数据类型ADT 

3.2.2.创建开关左顶灯的控制指令(Variable)需要使用的应用数据类型ADT 

3.3.创建Application Port Interface(这里我们只需要创建S/R接口)

3.3.1.创建存放门开关状态的S/R Port Interface(Port)

3.3.2.创建存放开关左顶灯的控制指令的S/R Port Interface(Port)

3.4.在Atomic SWC上创建的Port实体

3.4.1.配置调光分析计算SWC的接口(Port)实体

3.4.1.1.将创建的PiLightState的S/R Port Interface以Sender接口图形来显示

3.4.1.2.将创建的PiDoorState的S/R Port Interface以Receiver接口图形来显示

3.4.1.3.再创建一个名为PiDoorState的S/R Port Interface以Receiver接口图形来显示

3.4.1.4.创建数字常量

3.4.1.5.PiLightState改名为PpLightStateFront

3.4.1.6.PiDoorState改名为PpDoorStateFrontLeft

3.4.1.7.PiDoorState_1改名为PpDoorStateFrontRight

3.4.2.配置左门开关传感器和右门开关传感器SWC的接口(Port)实体

3.4.2.1.将创建的PiDoorState的S/R Port Interface以Sender接口图形来显示

3.4.3.配置执行器左顶灯SWC的接口(Port)实体

3.4.3.1.将创建的PiLightState的S/R Port Interface以Receiver接口图形来显示

3.5.对调光控制模块Composition SWC Type进行配置

3.5.1.实例化Atomic SWC 

3.5.2.Port连线 ​

3.6.创建实现数据类型Implementation Data Types(IDT)

3.6.1.创建左门开关状态(Variable)和右门开关状态(Variable)需要使用的实现数据类型IDT 

3.6.2.创建开关左顶灯的控制指令(Variable)需要使用的实现数据类型IDT 

3.7.建立数据映射

3.8.将三个Atomic SWC Type(CtApMySwc、CtSaDoor、CtSaInteriorLight)都添加数据映射

3.9.实例化Composition SWC


1、用DaVinci Configurator新建项目工程

1.1. 打开DaVinci Configurator(Cfg),点击“File->new”,则出现如下项目配置界面,按照下图配置完成后单击“Next”

 1.2.上面单击完“Next”之后,就会出现如下配置界面,这里我们默认配置即可,而“ECUC File Granularity(ECUC文件颗粒)”选项可以勾选“Single File”,该选项跟生成的arxml文件形式有关。这里我勾选了“Single File”生成的ECUC文件和勾选“One File per Module”生成的ECUC文件是一样的,暂时还没搞清,后面再研究一下有何区别吧 )

1.3.选择要使用的芯片以及编译器类型(IDE-集成开发环境) 

1.4.继续默认配置即可,单击“Finish”选项后,即可生成创建的工程。如果大家想要根据自己的需求进行配置,则按照下图说明做相应改动

 5.最后退出DaVinci Configurator(Cfg)软件,找到之前创建的项目工程路径C:\AUTOSAR_Demo,如下图所示(可以看到生成了.dpa格式的工程文件):

 2、用DaVinci Developer打开GL_Demo项目工程

2.1.打开DaVinci Developer(Dev)点击“File->Open Workspace...”,选择上面生成的GL_Demo.dpa工程文件,此时就会出现如下界面:

3、在DaVinci Developer中新建一个调光控制模块

调光控制模块(Dimming control module)细分为

  • 左门开关传感器(发出一个左门开关状态)、
  • 右门开关传感器(发出一个右门开关状态)、
  • 执行器左顶灯(接收一个开关左顶灯的控制指令)
  • 调光分析计算(接收左门和右门开关状态经过计算后发出开关左顶灯的控制指令)

基于SWC架构方案对该模块进行设计:

  • 调光控制模块设计为Composition SWC
  • 左门开关传感器右门开关传感器执行器左顶灯调光分析计算分别设计为调光控制模块下的Atomic SWC
  • 将每个Atomic SWC需要的Variable组设计为Port,需要将Variable设计为Port下的Data Element,将Port相互连接
  • 将每个Atomic SWC需要的函数设计为Runnable

开始在DaVinci Developer软件中配置SWC:

3.1.创建SWC Types

3.1.1.创建调光控制模块Composition SWC Type

为调光控制模块设计成Composition SWC而定义了一个名为CtCoApplicaton的Composition型的SWC Type

3.1.2.创建调光分析计算Application SWC Type

为调光分析计算设计成Application SWC而定义了一个名为CtApMySwc的Application型的SWC Type

3.1.3.创建左门开关传感器和右门开关传感器SensorActuator SWC Type 

为左门开关传感器和右门开关传感器设计成SensorActuator SWC而定义了一个名为CtSaDoor的SensorActuator 型(传感器/执行器型)的可重用的SWC Type(左门和右门都可以此SWC类型来定义

3.1.4.创建执行器左顶灯SensorActuator SWC Type  

为执行器左顶灯设计成SensorActuator SWC而定义了一个名为CtSaInteriorLight的SensorActuator 型(传感器/执行器型)的SWC Type(这里选不选Support Multiple Instantiation(可重用)无所谓,因为我们只想定义一个执行器左顶灯的SWC

3.2.创建应用数据类型Application Data Types(ADT) 

3.2.1.创建左门开关状态(Variable)和右门开关状态(Variable)需要使用的应用数据类型ADT 

为了将左门开关状态(Variable)和右门开关状态(Variable)在DaVinci Developer软件的图形显示界面能够正常使用而定义了一个名为AdtDoorState的boolean型的ADT

3.2.2.创建开关左顶灯的控制指令(Variable)需要使用的应用数据类型ADT 

为了将开关左顶灯的控制指令(Variable)在DaVinci Developer软件的图形显示界面能够正常使用而定义了一个名为AdtLightState的boolean型的ADT

3.3.创建Application Port Interface(这里我们只需要创建S/R接口)

3.3.1.创建存放门开关状态的S/R Port Interface(Port)

将上面设计的Atomic SWC所需要的门(左门和右门)开关状态设计成一个名为PiDoorState的S/R Port Interface(Port),需要门开关状态设计为Port下的Data Element变量类型选择之前定义的AdtDoorState类型变量名设置为DeDoorState

 

3.3.2.创建存放开关左顶灯的控制指令S/R Port Interface(Port)

将上面设计的Atomic SWC所需要的开关左顶灯的控制指令设计成一个名为PiLightState的S/R Port Interface(Port),需要开关左顶灯的控制指令为Port下的Data Element(变量类型选择之前定义的AdtLightState类型,变量名设置为DeLightState

3.4.在Atomic SWC上创建的Port实体

在Object Browser对象浏览界面双击CtApMySwc,进入CtApMySwc的Software Design软件编辑设计界面,选中左下角的Interface Graphic(图形界面)图标,即可看到CtApMySwc以图形化的形式显示在Software Design软件编辑设计界面,标志着我们已经进入图形编辑界面 

3.4.1.配置调光分析计算SWC的接口(Port)实体

单击Graphic图形选项卡,切换至图形界面编辑工具栏,这里就可以用来添加图形化端口(Port)

3.4.1.1.将创建的PiLightState的S/R Port Interface以Sender接口图形来显示

S/R Port Interface通过Sender接口图形在Software Design软件编辑设计界面显示时,该S/R Port Interface已经在此界面下已实例化了(后面可以按照AUTOSAR标准命名把头缀由“Pi(应用类)”改成“Pp(实例类)”) 

3.4.1.2.将创建的PiDoorState的S/R Port Interface以Receiver接口图形来显示

S/R Port Interface通过Sender接口图形在Software Design软件编辑设计界面显示时,该S/R Port Interface已经在此界面下已实例化了 (后面可以按照AUTOSAR标准命名把头缀由“Pi(应用类)”改成“Pp(实例类)”) 

3.4.1.3.再创建一个名为PiDoorState的S/R Port Interface以Receiver接口图形来显示

S/R Port Interface通过Sender接口图形在Software Design软件编辑设计界面显示时,该S/R Port Interface已经在此界面下已实例化了(后面可以按照AUTOSAR标准命名把头缀由“Pi(应用类)”改成“Pp(实例类)”) 

3.4.1.4.创建数字常量

在Contants中创建数字常量为接口变量提供初始值

3.4.1.4.1.创建名为CDoorClose的数字常量(值为0)

3.4.1.4.2.创建名为CLightOff的数字常量(值为0) 

3.4.1.5.PiLightState改名为PpLightStateFront

双击PiLightState该接口(Port),按照AUTOSAR标准要求将PiLightState改名为PpLightStateFront,并为Port中存放的变量DeLightState添加CLightOff初始值

3.4.1.6.PiDoorState改名为PpDoorStateFrontLeft

双击PiDoorState该接口(Port),按照AUTOSAR标准要求将PiDoorState改名为PpDoorStateFrontLeft,并为Port中存放的变量DeDoorState添加CDoorClose初始值

3.4.1.7.PiDoorState_1改名为PpDoorStateFrontRight

双击PiDoorState_1该接口(Port),按照AUTOSAR标准要求将PiDoorState_1改名为PpDoorStateFrontRight,并为Port中存放的变量DeDoorState添加CDoorClose初始值

3.4.2.配置左门开关传感器和右门开关传感器SWC的接口(Port)实体
3.4.2.1.将创建的PiDoorState的S/R Port Interface以Sender接口图形来显示

双击PiDoorState该接口(Port),按照AUTOSAR标准要求将PiDoorState改名为PpDoorState,并为Port中存放的变量DeDoorState添加CDoorClose初始值

3.4.3.配置执行器左顶灯SWC的接口(Port)实体
3.4.3.1.将创建的PiLightState的S/R Port Interface以Receiver接口图形来显示

双击PiLightState该接口(Port),按照AUTOSAR标准要求将PiLightState改名为PpLightState,并为Port中存放的变量DeLightState添加CLightOff初始值

3.5.对调光控制模块Composition SWC Type进行配置

3.5.1.实例化Atomic SWC 

此处的Atomic SWC Types被拖到Composition SWC Types的Software Design软件编辑设计界面,界面上就是生成实例化的Atomic SWC

由于自动生成的实例化的SWC名字跟定义的Atomic SWC Type(也就是和我们说的应用类SWC)相同,需要按照AUTOSAR标准用Cp头缀表示实例化的SWC

3.5.2.Port连线 

3.6.创建实现数据类型Implementation Data Types(IDT)

3.6.1.创建左门开关状态(Variable)和右门开关状态(Variable)需要使用的实现数据类型IDT 

为AdtDoorState的boolean型的ADT新建一个代码级的名为IdtDoorState的boolean型的IDT(对ADT的具体实现)ADT是图形化的类型,而IDT是代码级别的数据类型,定义此IDT类型就是为了将图形化类型用对应的IDT类型在代码生成工具中生成此数据类型的代码,所以我们后面要做数据映射。

3.6.2.创建开关左顶灯的控制指令(Variable)需要使用的实现数据类型IDT 

 为AdtLightState的boolean型的ADT新建一个代码级的名为IdtLightState的boolean型的IDT(对ADT的具体实现)

3.7.建立数据映射

为了将之前定义ADT和IDT相互映射,需要在Type Mapping Sets中创建数据类型映射,并将创建的Data Type Mapping取名为DemoTypeMapping

 

 将之前定义好的ADT和对应的IDT在映射表上进行映射

3.8.将三个Atomic SWC Type(CtApMySwc、CtSaDoor、CtSaInteriorLight)都添加数据映射

3.9.实例化Composition SWC

双击ECU_Composition(对一个ECU整体封装)

 此处的调光控制模块Composition SWC Type被拖到ECU_Composition的Software Design软件编辑设计界面,界面上就是生成实例化的调光控制模块Composition SWC

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/796870.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

生信专题十余种案例

集成多组学数据的机器学习在生物医学中的应用 原文链接 案例部分图示: 案例图示一:基于自编码器的单细胞转录组-蛋白组学整合分析 案例图示二:基于蛋白组学-代谢组学的肿瘤生物标志物发现 案例图示三:基于GWAS-表型组学的肺癌风…

idea terminal npm指令无效

文章目录 一、修改setting二、修改启动方式 一、修改setting 菜单栏:File->Settings 二、修改启动方式 快捷方式->右键属性->兼容性->勾选管理员身份运行

ChatGLM-6B 部署与 P-Tuning 微调实战-使用Pycharm实战

国产大模型ChatGLM-6B微调部署入门-使用Pycharm实战 1.ChatGLM模型介绍 ChatGLM-6B 是一个开源的、支持中英双语的对话语言模型,基于 General Language Model (GLM) 架构,具有 62 亿参数。结合模型量化技术,用户可以在消费级的显卡上进行本…

MyBatis学习笔记之缓存

文章目录 一级缓存一级缓存失效 二级缓存二级缓存失效二级缓存相关配置 MyBatis集成EhCache 缓存:cache 缓存的作用:通过减少IO的方式,来提高程序的执行效率 mybatis的缓存:将select语句的查询结果放到缓存(内存&…

用OpenCV图像处理技巧之白平衡算法(一)

1. 引言 欢迎继续来到我们的图像处理系列,在这里我们将探讨白平衡的关键技术。如果大家曾经拍过一张看起来暗淡、褪色或颜色不自然的照片,那么此时大家就需要了解到白平衡技术的重要性。在本文中,我们将深入探讨白平衡的概念,并探…

Qt完成文本转换为语音播报与保存(系统内置语音引擎)(二)

一、前言 随着人工智能技术的不断发展,语音技术也逐渐成为人们关注的焦点之一。语音技术在很多领域都有着广泛的应用,例如智能家居、智能客服、语音识别等等。其中,语音转文字技术是语音技术中的一个重要分支,它可以将语音转换成可编辑的文本,为人们的生活和工作带来了更…

首批!棱镜七彩通过汽车云-汽车软件研发效能成熟度模型能力评估

2023年7月25-26日,由中国信息通信研究院、中国通信标准化协会联合主办的“2023年可信云大会”隆重召开。会上,在中国信息通信研究院云计算与大数据研究所副所长栗蔚的主持下,中国信通院发布了“2023年上半年可信云评估结果”,并由…

力扣 -- 1567. 乘积为正数的最长子数组长度

一、题目 题目链接:1567. 乘积为正数的最长子数组长度 - 力扣(LeetCode) 二、解题步骤 下面是用动态规划的思想解决这道题的过程,相信各位小伙伴都能看懂并且掌握这道经典的动规题目滴。 三、参考代码: class Solut…

【Matlab】基于粒子群优化算法优化BP神经网络的数据分类预测

【Matlab】基于粒子群优化算法优化BP神经网络的数据分类预测(Excel可直接替换数据) 1.模型原理2.数学公式3.文件结构4.Excel数据5.分块代码5.1 fun.m5.2 main.m 6.完整代码6.1 fun.m6.2 main.m 7.运行结果 1.模型原理 “基于粒子群优化算法优化BP神经网…

【Unity100个实用小技巧】如何动态生成图片的Mipmap

☀️博客主页:CSDN博客主页💨本文由 萌萌的小木屋 原创,首发于 CSDN💢🔥学习专栏推荐:面试汇总❗️游戏框架专栏推荐:游戏实用框架专栏⛅️点赞 👍 收藏 ⭐留言 📝&#…

linux V4L2子系统——v4l2架构(1)之整体架构

概述 V4L(Video for Linux)是Linux内核中关于视频设备的API接口,涉及视频设备的音频和视频信息采集及处理、视频设备的控制。V4L出现于Linux内核2.1版本,经过修改bug和添加功能,Linux内核2.5版本推出了V4L2&#xff08…

【python】AttributeError: ‘DataFrame‘ object has no attribute ‘append‘

在使用pandas时出现这个问题,因为我复现的代码是很久之前发布的了,我用的pandas又是最新版本2.0.3,大概猜到是pandas版本出了问题,参考 (6条消息) 解决AttributeError: ‘DataFrame‘ object has no attribute ‘append‘_wang_j…

辅助驾驶功能开发-执行器篇(03)-Mobileye Control Requirements

1. 目的 本文描述了产品开发不同阶段(研发、验证和产品化)车辆集成的控制要求。 2. 控制接口要求 2.1 接口类型 控制模块与车辆之间的接口应基于CAN协议或Flexray协议。 2.2 通讯频率 控制模块与车辆之间的通讯频率应高于36Hz。通信频率优先选择为 50…

Spring高手之路11——BeanDefinition解密:构建和管理Spring Beans的基石

文章目录 1. 探索BeanDefinition1.1 官方文档对BeanDefinition的解读1.2 BeanDefinition关键方法剖析1.3 BeanDefinition部分方法的实际运用1.4 BeanDefinition深层信息结构梳理 2. BeanDefinition构造体系解析2.1 BeanDefinition的类型及其应用2.2 生成BeanDefinition的原理剖…

最全语言模型领域知识评估Benchmark——獬豸:包含了516门学科、13学科门类、240w条数据

论文链接:https://arxiv.org/abs/2306.05783 代码链接:https://github.com/MikeGu721/XiezhiBenchmark 复旦大学肖仰华团队——獬豸(Xiezhi)是一套针对语言模型(LM)的领域评估Benchmark。它由249587道多选…

linux下frp实现内网穿透

frp简介 frp是什么? frp采用Golang语言编写,支持跨平台,仅需下载对应平台的二进制文件即可执行,没有额外依赖。 frp是一个专注于内网穿透的高性能的反向代理应用,支持TCP,UDP,HTTP,HTTPS等多种协议。可以将…

Android开发之Fragment

Fragment可以看作一种灵活的子Activity,其依附于Activity运行。一个Activity下可以依附多个Fragment,从而实现一个页面多个窗口,而同一个Fragment也能被多个Activity复用,因此Fragment是Android开发中相当重要的板块。 文章目录 …

Docker-compose容器编排

Docker-Compose介绍 Compose 是 Docker 公司推出的一个工具软件,可以管理多个 Docker 容器组成一个应用。你需要定义一个 YAML 格式的配置文件docker-compose.yml,写好多个容器之间的调用关系。然后,只要一个命令,就能同时启动/关…

Visual Studio 2022 程序员必须知道高效调试手段与技巧(中)

🎬 鸽芷咕:个人主页 🔥 个人专栏:《C语言初阶篇》 《C语言进阶篇》 ⛺️生活的理想,就是为了理想的生活! 文章目录 📋 前言💬 调试的时候查看程序当前信息💭 查看临时变量的值💭 查…

实验报告-Sublime配置默认语法,以配置Verilog语法为例

实验报告-Sublime配置默认语法,以配置Verilog语法为例 1,下载Verilog语法环境2,Sublime配置语法工作环境,以Verilog语法环境为例。3,打开一个新的Sublime,验证编辑器配置Verilog为默认语法成功!4,Sublime汉化1,下载Verilog语法环境 参考文献: 1,Sublime Text 4加载…