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

AUTOSAR—TM模块介绍及使用概要

TM模块在服务层,提供一些基于时间的服务功能,如测量CPU和任务的负载,周期执行一些回调函数。
主要功能: 定时器复位、获取时间宽度、定时器转换、定时器同步、繁忙等待

根据所要测量的场景不同,有1us16bit、1us24bit、1us32bit、100us32bit四种类型可选;
以1us16bit定时器类型为例,讲几个常用函数。
Tm_ResetTimer1us16bit(Tm_PredefTimer1us16bitType* TimePtr):对定时器实例进行复位;
Tm_GetTimeSpan1us16bit(Tm_PredefTimer1us16bitType* TimePtr, usint16* TimeSpanPtr) : 计算当前时间和参考时间的差;
Tm_ShiftTimer1us16bit(Tm_PredefTimer1us16bitType* TimePtr, usint16 TimeValue): 偏移定时器实例的参考时间,直接将定时器数值进行偏移;
Tm_SyncTimer1us16bit(Tm_PredefTimer1us16bitType* TimeDstPtr, Tm_PredefTimer1us16bitType* TimeSrcPtr): 同步两个定时器,把源定时器时间值给到目的定时器
Tm_BusyWait1us16bit(uint8 WaitingTimeMin) :通过保证最短等待时间进行轮询来执行繁忙等待,说白了就是延时一段时间

  • 例子:

1、在测试代码执行所用时间时就可以这样:

Tm_ResetTimer1us16bit(Tm_PredefTimer1us16bitType* TimePtr)
/运行的代码/
Tm_GetTimeSpan1us16bit(Tm_PredefTimer1us16bitType* TimePtr, usint16* TimeSpanPtr) 

2、对于需要在不同时间执行不同逻辑的周期任务中,可以搭建时间状态机:参考Tm用户手册;

关于Gpt:Tm模块依赖于Gpt驱动,在Gpt配置中要做如下配置:

1、	在General-> GptPredefTimer1usEnablingGrade中选择api等级
2、	在GptPredefTimerChannelConfig中配置通道
具体的配置可以参考《AUTOSAR_MCAL_GPT_UM.pdf》
http://www.dtcms.com/a/54012.html

相关文章:

  • 深入剖析 Kubernetes 弹性伸缩:HPA 与 Metrics Server
  • 文件解析:doc、docx、pdf
  • 开发环境搭建-06.后端环境搭建-前后端联调-Nginx反向代理和负载均衡概念
  • RAG了解与实践
  • QEMU源码全解析 —— 块设备虚拟化(1)
  • MySQL root用户密码忘记怎么办(Reset root account password)
  • Java面经
  • 字节跳动AI原生编程工具Trae和百度“三大开发神器”AgentBuilder、AppBuilder、ModelBuilder的区别是?
  • 蓝桥试题:传球游戏(二维dp)
  • 基于海思soc的智能产品开发(芯片sdk和linux开发关系)
  • unity console日志双击响应事件扩展
  • C#核心(21)万物之父Object中的方法
  • Lambda表达式使用介绍
  • 【Bootstrap5】Bootstrap5学习笔记
  • 数据库复习(第五版)- 第七章 数据库设计
  • 3.6c语言
  • 【算法系列】基数排序
  • 维度建模事实表技术基础解析(以电商场景为例)
  • 洛谷 P1480 A/B Problem(高精度详解)c++
  • 相机几何与标定:从三维世界到二维图像的映射
  • 【LeetCode101】对称二叉树
  • 逐梦DBA:MySQL的编码设置
  • PWM子系统芯片驱动源码pwm-tegra.c分析
  • leetcode15 三数之和
  • ruoyi框架接入kkFileView
  • 侯捷 C++ 课程学习笔记:深入理解C++内存管理与类对象构造全过程
  • 【极客时间】浏览器工作原理与实践-2 宏观视角下的浏览器 (6讲) - 2.6 渲染流程(下):HTML、CSS和JavaScript,是如何变成页面的?
  • 第005文-模拟入侵网站实现0元购
  • µCOS-III从入门到精通 第八章(时间片调度)
  • 点云 基于法线的双边滤波原理和过程