GPT通用计时器,在S32K144这款芯片上,有4个外设模块,最多38各通道可以作为GTP的计时器通道,具体详细的大家可以去看芯片手册。
这里咱们只管怎么用EB来配置GPT驱动。
配置之前
第一步 找时钟源
在配置GPT之前,咱们要先搞清楚,我们准备用哪一个模块来当做定时器的通道,比如使用LPIT低功耗中断定时器。
然后查出来这个LPIT模块有哪些时钟源:
第二步 配置MCU时钟
先进入MCU模块,找到McuClockSettingConfig配置标签栏(上篇提到的配置所有外设时钟那块)
再找到LPIT这个外设,点进去:外设时钟选成FIRC
同样不要忘记设置时钟参考点!McuClockReferencePoint标签栏下,新建,可以自己取一个名字,不明白的可以看我上面一篇文章
主要是用于和其他MCAL模块进行沟通。
到此为止配置GPT前的准备工作:找模块时钟源,配置MCU时钟完成了。
开始配置
打开EB,加入一个GPT模块,双击进入
主要是一些API函数的使能或者禁用,不多说。
先不要着急进入GptChannelConfiguration新建通道,咱们先把前面那个配置的时钟参考给迎接过来:
第一步 新建时钟参考点
进入GptClockReferencePonit标签栏:新建时钟参考点
选择咱们在前面MCU时钟配置里,建的时钟参考点
这下子算是把MCU模块与GPT模块给连接了起来。
但也别急着去新建通道,还有一步,必须要做的。
LPIT其实是有4个通道,具体用哪个,好像还没说,也就是硬件层面的通道选择使能,似乎没做。
第二步 硬件通道使能
故先进入GptHwConfiguration标签栏:点小人全部添加所有通道,但只使能LPIT的通道0的中断和使用
到这里万事俱备只欠东风了。
第三步 配置连接
进入GptChannelConfiguration标签栏下:新建通道
双击进入配置界面:
先选择GPT 硬件通道为上面使能好的,如果隔了上一步不使能,这里就会报错;
再选择GPT通道时钟源参考,也就是咱们上文配置的参考点;
再把通道模式设置成——连续模式;
就能看到GPT频率变成了24M,与前面MCU模块的配置是吻合的。
别急,下面还有:
最大计数值,LPIT是32位计时器
GTP通道函数,比如你想在GPT通道中断的时候,执行某个操作,比如点灯反转电平,就要在这里建立一个通知事件,可以自己随便命名,后面会用到。