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

读懂AUTOSAR :DiagnosticLogAndTrace DLT(四)-- API解析

一、周期调用的函数:Dlt_TxFunction

根据参数DltGeneralTrafficShapingSupport,决定如何去发送DLT消息。如果为TRUE,那需要参考参数DltLogChannelTrafficShapingBandwidth为每个Log通道设置发送带宽;如果为FALSE,那么所有缓存的DLT消息会立即发送。

    /* traffic shaping */
#if (DLT_ENABLE_TRAFFIC_SHAPING == STD_ON)txChannel->trafficShapingTimer += txChannel->transmitCycleTime;if (txChannel->trafficShapingTimer >= DLT_TIME_1S) {txChannel->trafficShapingTimer = 0u;txChannel->trafficShapingCount = 0u;}if (txChannel->trafficShapingCount >= txChannel->trafficShapingBandwidth) {Dlt_OverflowHandle(txChannel); /* avoid overflowTimer stop updating */return;}
#endif

Dlt_TxFunction函数会检查“缓冲溢出”标识。如果发生溢出,那么DLT命令“BufferOverflowNotification”会立即发出,直到“溢出”标识被清掉(经过DltLogChannelBufferOverflowTimer参数配置的时间,此标识自动被清掉)

如果一个DLT消息无法被发送,那么每次调用Dlt_TxFunction都会尝试发送一次该消息,直到尝试了DltLogChannelMaxNumOfRetries参数所配置的次数。

二、上层调用函数

2.1. Dlt_Init

2.2.  Dlt_RegisterContext

 入参:

1.  sessionId -- 对于BSW而言,应传入模块ID; 对于SWC而言,应传入端口定义参数值(port defined argument value)

2. appId -- 要注册的Application ID

3. contextId -- 要注册的Context ID

4. appDescription -- app 描述,最长255个字符 (这里所说的描述到底是什么?

5.  lenAppDescription -- app描述的字符长度

6. contextDescription -- context描述,最长255个字符

7. lenContextDescription -- context描述的字符长度

2.3. Dlt_SendLogMessage

这是BSW模块或SWC模块所使用的发送LOG报文的接口

 有如下入参。

sessionId--仅仅对BSW来讲,这实际上是模块号。例如Det模块号15.

logInfo--对报文进行滤波的相关信息的结构体。

logData--被记录的参数的buffer,这个指针表示Log报文的payload。

logDataLength--数据buffer的长度

http://www.lryc.cn/news/58778.html

相关文章:

  • 【LeetCode】剑指 Offer 56. 数组中数字出现的次数 p275 -- Java Version
  • Zookeeper集群 + Fafka集群
  • 全国青少年电子信息智能创新大赛(复赛)python·模拟四卷
  • Redis - 介绍与使用场景
  • Spark SQL实战(07)-Data Sources
  • Django DRF - 权限Permissions
  • 二叉树(OJ)
  • mysql中增删改成的练习
  • 谈一谈Java的ThreadLocal
  • 边缘检测与阈值分割
  • QQ空间无敌装逼,复制下面的任一代码粘贴即可出现意想不到的图案。
  • 必看!总结5种JavaScript异步解决方案
  • JUC并发编程高级篇第四章之ThreadLocal(人手一份,天下安)
  • dump 定位分析
  • (十二)排序算法-插入排序
  • elasticsearch 认知
  • 《人体地图》笔记
  • java基础集合面试题
  • Vue学习-Vue入门
  • 【项目】bxg基于SaaS的餐掌柜项目实战(2023)
  • 灌区流量监测设备-中小灌区节水改造
  • SpringBoot2核心功能 --- 指标监控
  • python实战应用讲解-【numpy数组篇】常用函数(三)(附python示例代码)
  • DIN论文翻译
  • python列表,元组和字典
  • 300元左右的蓝牙耳机哪个好?300左右音质最好的蓝牙耳机
  • 【消息队列】聊一下生产者消息发送流程
  • 特斯拉和OpenAI的加持,马斯克简直人生赢家
  • 优维低代码:第三方接口接入
  • SQL 177. 第N高的薪水