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、在测试代码执行所用时间时就可以这样: