AUTOSAR工具DaVinci Developer有什么,能干啥?

看完《AUTOSAR初学者最想搞懂的东西》是不是还是不知道怎么动手开搞AUTOSAR,刚打开DaVinci工具依然很陌生,不知道点哪里?
其实,这跟学其他软件工具使用一样,你不知道其里面有什么功能,所以不知道做什么。

如果你已经入门了,以下内容对你来说可能小菜一碟,但是对初学者而言,前面是模糊的,不知道走哪条路比较好,又不敢向前踏出一步。

我希望我做的是一个引导图,能够引领初学者少走弯路。

本文就开始讲解DaVinci工具如何使用。

1.概念和用途

在使用之前,首先要搞清楚,Developer是干什么用的。

很多人认为它是用来做SWC配置的,其实不然,应该说是做SWC设计的。

配置和设计有什么区别,如果你对A-Spice有一定了解,设计是Coding之前的工作。但是做AUTOSAR开发的小伙伴,很多人都不care这些,拿来就写代码,就配置参数。

认真想一想,Developer里面对SWC的设计或者配置,其实跟软件架构设计过程中的Component设计很像,或者说本来就是一回事。SWC中的C就是Component的意思。

做SWC的设计,就要设计Component,就要设计Interface或者说各种各样的Ports,然后参数等等。这些统统都可以在Developer工具上进行。

例如,之前我的博文《AUTOSAR Port配置教程》里面的

就是软件架构上的组件和接口图。

所以说,Developer是用来做设计的,也就是说要想好这个软件要做些什么功能,要设计多少个SWC,具体的接口是怎样的,同步还是异步的调用方式等等。然后在动手在上面操作,整体而言,会节省很多时间。

当然,对于初学者,把它当做配置工具使用也没有问题的,毕竟了解概念、摸清其操作、先把工具用起来会显得更迫切、更重要。

2. 工具概览

在使用之前,看看这个工具有什么。了解整体的视图和功能在学一个软件是很重要的。

就这个视图而言,菜单栏和对象浏览窗口用的最多,特别是对象浏览窗口还藏着很多很多功能。

3. 菜单栏

跟其他软件一样,菜单栏很简单,没必要做太多的解释,点进去看就行了。

4. 对象类型

重点讲解Developer里面的对象(Object),我们平时在Developer做AUTOSAR开发大多数情况下操作的就是Object。

而这个Developer的Object类型是很多的。就是这个图里面这些:

我用脑图做了个全面的分类总结:

以上这些都算是AUTOSAR的概念,不是这个DaVinciDeveloper独有的,例如SWC的类型。各个是干什么用的呢?我在《AUTOSAR SWC详解》里面讲解很清楚了。

SWC

描述/用途

Parameter  SWC/Calibration

此SWC用于将(其所在的ECU)的Calibration参数共享给外部设备。与Application SWC或SensorActuator SWC不同,这些SWC没有任何内部行为。

Composition SWC

这个SWC是在系统配置期间单一ECU里面的SWC的集合。这种SWC有助于抽象和标准化AUTOSAR目标的软件开发。

Atomic SWC

这个是相对Composition SWC而言的,是单个不再拆解的SWC,也算是个抽象的概念。

Application SWC

一般只包含应用程序的SWC

SensorActuator SWC

专门处理和sensor/actuator相关的SWC

Nvblock SWC

这种SWC是用于访问NVRAM或Memory的

Complex Device Driver  SWC

用于开发CDD(Complex Device  Driver)或者AUTOSAR标准不支持或未定义的一些组件

ECU Abstraction SWC

这类SWC通过直接与特定的 BSW 模块交互来提供对 I/O 的访问。严格来说其他 SWC 不能用于访问 I/O,只能使用这个。

Service SWC

这类SWC为BSW模块提供AUTOSAR指定的服务。

Service Proxy SWC

这种SWC充当代理,为一个或多个remote ECU提供内部服务。它的主要用途是在整个系统中分发车辆的模式信息。可以简单理解为跨ECU用的。

还有DataType,这个我也在《AUTOSAR Port配置教程》和《AUTOSAR Port原理概念详解》讲到过,还举了王二狗和李翠花的例子来解释。这里就不再重复了,对于DataType的创建和使用,还有高级用法,后续再做个专门的文章来讲解。

5. Software Design

这个很重要,也是实操最多的。

Software Design可以做什么?我做了个列表:

1

定义和配置 Component Types

2

定义和配置 the Sub-Structure  of a Composition Type

3

定义和配置 the Software  Structure of an ECU Project

4

定义和配置 Runnable Entities

5

定义和配置 Exclusive Areas

6

定义和配置 Inter-Runnable  Variables

7

定义和配置 Calibration  Parameters

8

定义和配置 Service Needs

9

定义和配置 Per-Instance Memory

10

定义和配置 NV Block  Components

11

定义和配置 Port Groups

12

定义和配置 Port Prototypes

13

定义和配置 Application Data  Types

14

定义和配置 Implementation  Data Types

15

定义和配置 Base Types

16

定义和配置 Units

17

定义和配置 Compu Methods

18

定义和配置 Compu Method for a  Bitfield

19

定义和配置 Data Constraints

20

定义和配置 Constants

21

定义和配置 Mode Declaration  Groups

22

定义和配置 Port Interfaces

23

定义和配置 Type Mapping Sets

24

定义和配置 Blueprint Mapping  Sets

25

定义和配置 Port Prototype  Blueprints

26

定义和配置 Addressing Methods

也许你还不是很了解上面的东西到底干嘛的,其实没关系,因为这里面涉及到很多AUTOSAR的概念,需要一步步去慢慢掌握。
对于初学者可以直接试试,从菜单栏点击“Software Design”,看到的界面是这样的

可以在空白处右键选择创建SWC,当然也可以在Object browser界面创建。

接着就可以在SWC上面创建Port和Interface等等了。

如果我不接着讲解下去,悟性高的同学也许可以摸索一番就可以找到方法了,但是如果你还是很懵,建议点击《AUTOSAR SWC详解》查看,里面的配置过程描述很详细了。你照着做一遍就会理解这个过程了,里面的概念我也有详细的讲解。最后,生成代码对照一下,你就会恍然大悟了。

6. Data Mapping

这一项功能,做总线开发的同学用的最多。

总线如CAN数据库一般都是客户提供的,里面包含了很多message和signal,这些内容是需要创建接口和它对应的。

如果通过手动添加是需要非常大的工作量的,这里可以批量处理。

点击这个“Data Mapping”菜单功能,可以看到一个波浪线和一串二进制码的图标,名称分别是:Signal View Mode和Port Element View Mode

Signal View Mode

Signal View Mode显示所有网络信号,包括以下信息:转换、消息、网络方向、端口、数据元素/操作和预定义变体。在Signal View Mode下选择网络信号后,快捷菜单中有以下命令:

Port Element View Mode

Port Element View Mode显示所有数据元素,包括以下信息:端口、方向、网络、消息、网络信号和预定义变量。在Port Element View Mode下选择数据元素后,快捷菜单中有和Signal View Mode一样的命令:

Select Data Element...

Unmap Data Element

Create Port Prototypes...

More Info...

Adapt Data Element to match Signal

Propagate Alive Timeout from Signal to  Data Element

Show in Software Design

Data Element Properties

Signal Properties...

Automap Data Elements...

Report to Clipboard

Properties

7. 其他

其他方面的如DataType的详细讲解、NVM的配置等等,我会在单独的文章做详细的讲解和配置过程描述。对于初学者,搞懂SWC的设计和Port/Interface以及DataType的配置是首要任务,然后在此基础上再去看其他的配置就可以举一反三了。

对于本文提到的一些概念和详细配置步骤,可详见:

本文提供PDF版下载,关注同名公众号,在公众号后台回复“asr-0827”即可获得下载链接。

  • 4
    点赞
  • 53
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Davinci Autosar是一种开源的汽车软件平台,用于创建和配置汽车电子控制单元(ECU)。它提供了一个灵活和可扩展的开发环境,以支持汽车制造商和供应商在汽车控制系统中使用Autosar标准。 配置Davinci Autosar操作系统(OS)是为了管理ECU上的软件任务和资源。配置OS的目的是根据特定的应用需求和硬件资源,有效地分配和管理任务,提高系统性能和可靠性。 在配置Davinci Autosar OS时,首先需要了解和选择适合特定应用的OS配置参数。这些参数包括任务数量、调度算法、任务优先级、任务堆栈大小等。任务数量取决于系统中需要执行的任务数量,调度算法决定了任务之间的调度顺序和优先级,任务优先级决定了任务的执行顺序和权重,任务堆栈大小是为了满足任务在执行过程中的内存需求。 其次,配置OS需要考虑系统的硬件资源。硬件资源包括处理器、内存、设备和总线等。配置过程中需要确定任务在处理器上的分配,内存的分配和管理,设备和总线的访问规则等。 最后,配置Davinci Autosar OS需要根据特定应用的需求进行系统优化。这包括任务间的通信和同步机制的选择,最小化任务切换的开销,减少内存使用,提高系统性能和可靠性等。 总之,配置Davinci Autosar OS是一个重要的过程,需要根据应用需求和硬件资源来管理和分配任务。通过正确配置OS,可以提高系统性能和可靠性,实现对汽车控制系统的有效管理。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值