【DaVinci Developer学习笔记】2-SWC的Software Design-RunnableEntity(上)

目录

2.1  前言 

2.2  Runnable Entity List

2.3  Triggers


2.1  前言 

       由于在网络上关于DaVinci Developer的文章内容实在很少,官方文档又生涩难懂,故而在此分享本人在日常学习Developer操作过程中的理解与总结,内容参考了AUTOSAR官方文档、Vector操作文档以及CSDN上已有的大佬的博客,望与诸君共同学习、共同交流、共同进步。

        如有疑误,望诸君多多海涵,在评论区下留言共同讨论!

       第2章内容主要介绍以Application Software Component为例的RunnableEntity中触发器(Triggers)、访问点(AccessPoints)、属性(Properties),内容丰富全是干货,希望对大家有所帮助。

2.2  Runnable Entity List

        在ASUTOSAR应用层APPL的SWC中,Runnable是作为函数存在(除了Calibration SWC)。在DaVinci Developer内,Runnable Entity List下方3个按键如图2.1所示,且按键“New”还可扩展出三个选项:Runnable、Server Runnables和Init Runnable,见下表2.1所述。

图2.1 Runnable Entity List下方按键
表2.1 New扩展中选项描述
NewDecsription
Runnable以默认名创建Runnable,不自带Triggers
Server Runnables当该SWC实例化C/S端口接口类型且作为Server,可直接在"New"中选择Server Runnables创建Runnable,并且带有对应于C/S接口原型中操作的Trigger:On Operation Invocation
Init Runnable创建带有Trigger:Init 的Runnable

       点击配置一个Runnable时,右侧属性配置框上方出现4个项目卡:

       Triggers:触发器,用于激活Runnable运行。哪些触发器允许配置,取决于SWC是否配置了对应的端口接口原型;

       Access Points:访问点,对应于该Runnable运行时所访问的端口与操作。与Triggers相同,哪些访问点可配置,取决于Runnable是否配置了对应的端口接口原型;

       Properties:属性框,用于配置Runnable的基本属性,包括命名、符号、是否并发调用、最小启动间隔、(针对Triggers的)激活原因;

       Description:描述,可对该Runnable进行功能描述,起注释作用。

2.3  Triggers

       在一个Runnable中总共可配置14个Triggers,它们各自的描述和前置条件(precondition)见下表2.2:

表2.2 Triggers的描述、前置条件及可否配置激活原因

Triggers

Description

Precondition

Activation

Reason

Init

初始化时触发Runnable

默认任何Runnable均可配置,且同一个Runnable只允许存在一个Init,不允许存在其他Trigger

Background

触发的Runnable必须映射在优先级最低的Task上,再由RTE重复调度

默认任何Runnable均可配置,但不允许存在其他Trigger

Periodic(下文有特别说明)

周期性触发Runnable

默认任何Runnable均可配置

On Data Reception

当SWC的某S/R端口接口原型接收到指定数据原型时触发

SWC配置S/R端口接口原型,作为接收端Receiver

On Data Reception Error

当SWC的某S/R端口接口原型接收指定数据原型发生错误时触发

On Data Send Completion

当SWC的某S/R端口接口原型发送指定数据原型完成时触发

SWC配置S/R端口接口原型,作为接收端Sender,且在其通讯规范中使用了Tx Acknowledge

On Operation Invocation

当SWC的某C/S端口接口原型中指定的操作被其他Client SWC调用时触发

SWC配置C/S端口接口原型,作为服务器Server

On Operation Call Return

当指定操作调用时会触发该Runnable用异步轮询的方式读取返回值

SWC配置C/S端口接口原型,作为服务器Client

On Mode Entry

当SWC的模式转换接口原型接收到指定的模式时触发

SWC配置模式转换接口原型,作为接收方Receiver

On Mode Exit

当SWC的模式转换接口原型中的模式,由指定的模式转换为其他模式时触发

On Transition

当SWC的模式转换接口原型中的模式,由指定模式转换为另一指定模式(顺序不可反)时触发

On Mode Switch Acknowledge

当SWC的模式转换接口原型作为发送方Sender,收到模式转换完成的确认时触发

SWC配置模式转换接口原型作为接收方Sender,在其模式转换通信规范中Use Mode Switch Acknowledge

On Internal Trigger Occurred

当指定的内部触发事件发生时触发,包括ECU内部定时器、状态机、任务调度等等

Runnbale在Access Points创建Internal Triggering Point,其他Runnable就可以以此作为触发

On External Trigger Occurred

当指定的外部触发事件发生时触发,包括来自其他ECU的信号、传感器输入、总线消息等等

SWC配置触发接口原型,作为接收方Receiver

       特别说明,创建Periodic Trigger时还需做如下图2.2所示中的设置:

图2.2 Perioidic Trigger配置

        Offset是指触发器在每个周期内的偏移量,用于确定周期触发器何时开始触发。例如:若设置一个周期为10s的触发器,并且将Offset设置为5s,那么触发器将在每个周期 第5秒开始触发。

       当SWC引用模式转换端口接口原型(Mode Switch Port Interface Prototype)且作为接收方Receiver时,除了带有Init Trigger的Runnable,其余Runnable均可对其Triggers配置Disabled in Mode。其含义是:软件组件原型处于指定模式时,配置有对应该模式的Disable in Mode的Triggers将无效,无法以此作为触发条件。见下图2.3所示为Disable in Mode配置流程示例:

图2.3 Disable in Mode配置流程示例

       

       在【DaVinci Developer学习笔记】2-SWC的Software Design-RunnableEntity(下)中的2.5Properties里介绍了关于Activation Reason的配置

返回总目录

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值