当前位置: 首页 > news >正文

Autosar Com配置-Timeout配置及实现-基于ETAS工具

文章目录

    • 前言
    • Autosar Com标准中的Timeout定义
    • Com配置
    • 生成的代码及使用
    • 总结

前言

项目开发过程中,有需求在未接收到CAN信号时,采用默认值或者特定值,此时,一个可行的方案就是使用Com模块的中的Timeout,本文介绍其配置及实现

Autosar Com标准中的Timeout定义

Timeout有两个定义,一个是超时时间ComTimeout,一个是超时触发的回调函数ComTimeoutNotification

在这里插入图片描述
超时时间配置的单位为,第一次超时的时间可以由ComFirstTimeout单独配置
在这里插入图片描述
回调函数用来触发超时之后的逻辑

Com配置

对于Com中的Signa和SignalGroup,都可以配置对应的Timeout参数,以SignalGroup为例
在这里插入图片描述
此处配置Timeout时间为0.2s,回调函数为Rte_COMCbkTOut_xxx

注意:在ETAS工具链中,一般以Rte_COMCbkTOut开头命名Timeout的回调函数,且再未配置ComTimeout时间时,即使配置了回调函数,也不会有实际的调用函数生成

生成的代码及使用

在Com_PBCfg.c中会生成对应的回调函数及超时时间定义,示例如下

static const Com_SignalTimeoutInfo_tst Com_IP_SignalIpdu05_CANFD_Rx_SigGrpTOutRef_acst[] =
{

    {
        #ifdef COM_RxUpdateTimeoutNotify
        /* Timeout Notification part*/

        &Rte_COMCbkTOut_xxx_CAN_Rx,
        #endif /* #ifdef COM_RxUpdateTimeoutNotify */

        0,         /* First timeout factor */

        40,              /* Timeout factor */

        (uint16)ComSignalGroup_Internal_xxx_CAN_Rx   /* Signal ID */
    }

};

此处回调函数为Rte_COMCbkTOut_xxx_CAN_Rx,且对应的超时时间为40 * 0.005 = 0.2s(0.005s为Com Rx主函数调用时间)


在Com_Cbk.h中也会生成回调函数的声明

#define COM_START_SEC_CODE
#include "Com_MemMap.h"
void Rte_COMCbkTOut_xxx_CAN_Rx(void);
#define COM_STOP_SEC_CODE
#include "Com_MemMap.h"

在我们自己的SWC中定义该函数,并添加对应的逻辑即可,示例如下:

void Rte_COMCbkTOut_xxx_CAN_Rx(void)
{
	VehSpd = 0;
}

总结

Signal未收到的时间需要进行确认,但一般需求不会给出该参数,需要根据实际使用情况进行判断,为确保不误触发,可以选择5-10个对应该signal发送的报文周期进行配置。

相关文章:

  • 解决“error: Tried to call obs_frontend_start_virtualcam with no callbacks!”
  • Tio-Boot 集成 Spring Boot 实现即时通讯功能全解析
  • 运维脚本——9.配置漂移检测
  • 【Linux内核】进程管理(下)
  • directx12 3d开发过程中出现的报错 十三
  • 全链路优化:如何让单点登录认证接口并发性能翻倍?
  • 鸿蒙开发环境搭建-入门篇
  • 网络运维学习笔记 017 HCIA-Datacom综合实验01
  • 区块链相关方法-SWOT分析
  • 侯捷 C++ 课程学习笔记:内存管理与工具应用
  • socket()函数的概念和使用案例
  • Java 使用websocket
  • 【Linux】34.封装 UdpSocket(1)
  • 【读书笔记·VLSI电路设计方法解密】问题53:什么是逻辑综合
  • bind()函数的概念和使用案例
  • WPF实现打印机控制及打印
  • JavaScript 数组连接方法
  • java中的Entry类,map接口
  • 值传递,引用传递
  • TIP: Flex-DLD
  • 中国一重集团有限公司副总经理陆文俊被查
  • 国家发改委:美芯片药品等领域关税影响全球科技发展,损害人类共同利益
  • 国家卫健委:有条件的二级及以上综合医院要开设老年医学科
  • 外交部答澎湃:美方攻击抹黑中加关系与合作的卑劣图谋不会得逞
  • 江淮、极氪、奇瑞,排着队造“劳斯莱斯”
  • 美联储宣布维持基准利率不变