AUTOSAR Mcal Gpt - 模块介绍

文章目录

  • [1. 模块简介](#1. 模块简介)
  • [3. API接口](#3. API接口)
  • [4. 功能介绍](#4. 功能介绍)
    • [4.1. 驱动状态机](#4.1. 驱动状态机)
    • [4.2. Normal定时器](#4.2. Normal定时器)
      • [4.2.1. Channel状态机](#4.2.1. Channel状态机)
      • [4.2.2. 定时模式](#4.2.2. 定时模式)
      • [4.2.3. 已启动时间和待溢出时间获取](#4.2.3. 已启动时间和待溢出时间获取)
    • [4.3. 预定义定时器](#4.3. 预定义定时器)
  • [5. 序列图](#5. 序列图)
    • [5.1. Continues Mode](#5.1. Continues Mode)
    • [5.2. One-Shot Mode](#5.2. One-Shot Mode)
    • [5.3. Disable/Enable Notifications](#5.3. Disable/Enable Notifications)
    • [5.4. Wakeup](#5.4. Wakeup)

1. 模块简介

GPT驱动位于微控制器抽象层(MCAL)。该驱动负责初始化和控制微控制器内部的通用定时器(GTM的TOM/ATOM 或GTP12)。

3.2.主要功能

  • 支持启动/停止硬件定时器,支持单次(One-Shot)和连续(Continuous)两种模式
  • 支持使能/禁止通道中断通知;
  • 支持使能/禁止唤醒中断
  • 支持1us和100us预定义定时器,用于时间服务模块,也可用于时间测量、超时检测等
  • 支持获取定时器启动时间(Gpt_GetTimeElapsed)和待溢出时间(Gpt_GetTimeRemaining)
  • 支持中断通知,定时器溢出后触发回调函数
  • 支持定时器唤醒功能,用于ECU从低功耗模式恢复

3. API接口

4. 功能介绍

4.1. 驱动状态机

主要关注Normal和Sleep两个核心状态,Gpt模块的基本功能,比如单次 or 连续触发定时中断,预定义定时器等功能均需要在Normal模式下才能使用。Sleep模式需配合EcuM模块进行使用,实现最终系统级的唤醒功能。

4.2. Normal定时器

4.2.1. Channel状态机

4.2.2. 定时模式

对于Normal类型的定时器支持One-Shot或Continue两种模式。可通过Gpt_StartTimer和Gpt_StopTimer启动或停止定时器。

One-Shot模式下,计数到溢出值后,自动停止定时器,并保持计数值不变,通过Gpt_StartTimer启动定时器,定时器切换到running状态,并从0开始计数,溢出后,切换到expired状态,若使能通知,则触发中断函数并调用对应定时器的回调函数。

Continue模式下,启动后,定时器按Gpt_StartTimer设置的溢出值周期计数, 直到调用Gpt_StopTimer停止计数器或GTP切换到SLEEP模式。

4.2.3. 已启动时间和待溢出时间获取

GTP提供Gpt_GetTimeElapsed、Gpt_GetTimeRemaining两个接口用于Normal定时器指定时间和待溢出时间。

Gpt_GetTimeElapsed在不同通道状态下的返回值和开发错误如下:

Gpt_GetTimeRemaining在不同通道状态下的返回值和开发错误如下:

4.3. 预定义定时器

Gpt支持根据分辨率和定时器宽度分为四类预定义定时器,具体如下:

5. 序列图

Normal定时器具体模式、相应接口(不含预定义定时器)具体使用示例如下:

5.1. Continues Mode

5.2. One-Shot Mode

5.3. Disable/Enable Notifications

5.4. Wakeup

实际配合EcuM模块进行使用,在EcuM中提供中断和轮询两种方式进行处理,中断方式如下:

轮询流程如下:

相关推荐
大白IT2 天前
第二部分:感知篇——汽车的“眼睛”与“耳朵”(第5章:环境感知与理解——从“看见”到“看懂”)
人工智能·目标跟踪·自动驾驶·汽车
JIngJaneIL3 天前
汽车租赁|汽车管理|基于Java+vue的汽车租赁系统(源码+数据库+文档)
java·vue.js·spring boot·汽车·论文·毕设·汽车租赁
唐丙斯城3 天前
新能源汽车动力电池全解析:性能与未来
汽车
MM_MS3 天前
C#小案例-->汽车租聘系统计价功能
c#·汽车·简单工厂模式·抽象工厂模式·visual studio
Rainmicro3 天前
TC387——MPU简介
汽车
电子科技圈4 天前
IAR与Quintauris携手推进RISC-V汽车实时应用的功能安全软件开发
嵌入式硬件·安全·设计模式·编辑器·汽车·risc-v
2301_764441334 天前
新能源汽车电磁辐射高级预测
python·算法·数学建模·汽车
MOS管-冠华伟业4 天前
微硕WINSOK高性能MOS管WST2N7002B,赋能汽车多区氛围灯精准控制
汽车
图扑可视化4 天前
图扑 HT 智慧汽车展示平台全自研技术方案
汽车·数据可视化·组态监控·汽车展示
九河云4 天前
汽车轻量化部件智造:碳纤维成型 AI 调控与强度性能数字孪生验证实践
人工智能·汽车·数字化转型