General Purpose Timer通用定时器
GPT驱动实现了4种定时器,在最多4个GTM_TOM模块上实现最多16 x 4个通道
3个系统定时器模块(STM)上有8个通道,周期中断定时器(PIT)上有8个通道,64位周期性中断定时器(PIT1)上有2个通道,实时时钟/自主周期中断(RTC/API)上有1通道。
模块计数器的GTM通道:有16个计数器,每个16位
PIT通道:32位向下计数器,每个计数器有独立的超时周期
PIT1通道:64位计数器
STM系统定时器模块通道:1个32位向上计数器,拥有8位分频器(1-256),4个32位比较通道,每个通道有独立中断源
RTC/API定时器通道:有独立的超时周期
配置
General
GptDeinitApi使能Gpt_DeInit接口
GptEnableDisableNotificationApi使能Gpt_EnableNotification和Gpt_DisableNotification接口
GptTimeElapsedApi使能Gpt_GetTimeElapsed接口
GptTimeRemainingApi使能Gpt_GetTimeRemaining接口
GptVersionInfoApi使能Gpt_GetVersionInfo接口
GptWakeupFunctionalityApi使能Gpt_SetMode/Gpt_EnableWakeup/Gpt_DisableWakeup/Gpt_Cbk_CheckWakeup接口
GptDevErrorDetect开发者检测
GptReportWakeupSource使能唤醒源报告
GptEnableDualClockMode使能双时钟机制,可以变更分频系数
GptEnablePit64使能Pit 64功能
GptClockReferencePoint
将MCU模块定好的时钟引用给GPT模块使用,顺带换个名字。
GptChannelConfigSet
GptChannelId序号
GptHwChannel给到的GPT硬件通道
GptChannelMode通道模式,单次触发还是连续触发
GptChannelTickFrequency指定定时器通道的tick频率,单位为Hz。
GptFreezeEnable冻结硬件源
GptEnableWakeup使能通道唤醒功能
GptNotification超时回调函数
GptChannelClkSrcRef时钟源
静态代码
Gpt_CheckWakeup检查唤醒源,并调用EcuM_SetWakeupEvent,用于有效的GPT通道唤醒事件
Gpt_DeInit逆初始化
Gpt_DisableNotification失能定时器通道的通知
Gpt_EnableNotification使能定时器通道通知
Gpt_GetVersionInfo获取版本
Gpt_Init初始化接口
Gpt_GetTimeElapsed获取过去的时间,也就是从定时器开始到现在的时间
Gpt_GetTimeRemaining获取剩余时间,也就是从现在到超时还有多久
Gpt_StartTimer开启定时器,并且设置超时时间
Gpt_StopTimer停止定时器
Gpt_EnableWakeup使能唤醒机制
Gpt_DisableWakeup失能唤醒机制
Gpt_Schm_ProtectResource和Gpt_Schm_UnprotectResource是用来保护临界区的接口,成对调用