关于tresos Studio(EB)的MCAL配置之GtmCfg
Generic Time Module通用时钟模块
General
GtmCfg_DevErrorDetect开发者错误检测开关
GtmCfg_DemErrorReporting诊断错误报告开关
GtmCfg_VersionInfoApi获取版本信息的接口开关
GtmCfg_ConfigSet
ClockManagementUnit
Global_Clock_Control_Numerator全局时钟分频器的分子
Global_Clock_Control_Denominator全局时钟分频器的分母
可选范围1——0x0100 0000
FXCLK_Selection线路EN_FXCLK的输入时钟,默认为CMU_GLK_EN,如果要启用其他时钟,必须设置Has_CMU_FXCLK_CTRL_REG = STD_ON
其他的配置都是使能某个CMU(Clock Management Unit时钟管理单元)一般全勾上就行
FCLK为Fixed Clock固定时钟
ECLK为External clock外部时钟
CLK为普通时钟
CMUClockControl
时钟管理单元,我这个芯片只有7个CMU
ClockDivider是分频值,填写0x0-0xffffff的值就行,其余两个配置项动不了。
FXClockControl
配置FXCLK时钟,这种配置也简单,一路添加,加到CMU_FXClockId里面选不到新的就行
TimeBaseUnit
时基单元
TBU_CHx_Enable使能通道
TBU_CHx_LowRes使能低分辨率控制。这个一般没啥用。
TBU_CHx_Channel_mode有两种模式,不检查模式使用低计数器位(0-23),检查模式使用较高计数器位(3-26)。两种模式可以用在TIM和DPLL模块。
TBU_CHx_CMU_Channel_Select时钟源选择引用隔壁的CMUClockControl模块里面的配置
勾选了哪个通道可以直接使用GtmReg.h里面的GTM.TBU.CHx_BASE.U来获取计时
静态代码
Gtm_Init也就是GtmCfg_Init初始化接口,在EcuM启动的时候调用
GtmCfg_GetVersionInfo获取版本号
Gtm_Cmu_Init也就是GtmCfg_Cmu_Init初始化CMU接口,在GtmCfg_Init里面调用
Gtm_Tbu_Init也就是GtmCfg_Tbu_Init初始化TBU接口,在GtmCfg_Init里面调用