NXP S32k3 MCAL GPT定时器配置

本文介绍了在汽车BMS项目中,使用S32K358微控制器的GPT定时器模块的配置步骤,包括PIT和STM定时器原理、工具S32KDS3.5的使用、中断处理和时钟配置,以及注意事项,特别提到了与Autosar封装的关系。
摘要由CSDN通过智能技术生成
应用场景

        最近接触到汽车BMS产品。需要使用到定时器部分,本章将基于S32K358介绍 定时器GPT模块 相关配置。S32K3 包含PIT类型和STM类型定时器。

原理介绍
        PIT

        PIT时钟源为AIPS_SLOW_CLK,其中RTI时钟为SIRC_CLK,用于在standby模式下唤醒MPU。

        PIT共有3个instance,每个instance又有4个channel。其中PIT_0可以被连接成为一个64bit的定时器(正常为32bit定时器)。

        PIT定时器为向下计数器,counter值写在LDVAL registers中。

        STM

        STM时钟源来源于AIPS_PLAT_CLK or FXOSC or FIRC, 可以在CGM中选择。

        STM共有3个instance,每个instance 有4个32bit的compare channel, 每个channel都有独立的中断。

        1个32 bit的向上计数器,具有自己独立的8位预分频器,可进行0~256级分频。

配置工具

        工具:S32KDS3.5 。如果不知道如何使用该工具请自行查阅相关指导说明,以下内容默认读者对该软件具有一定的使用经验,比如如何导入例程等。

        软件版本:导入NXP的官方例程(S32K358对应版本),由于汽车行业目前使用EB配置MCAL的居多,可以选择带Autosar封装版本的Demo。导入Autosar接口封装的版本好处在于大部分配置项和EB差不多。NXP也提供了EB版本,但是由于时间有限,后期会在EB上配置该工程并验证。

配置步骤
        GPT 配置

        第一步:导入官方例程,带Autosar封装的版本。

        第二步:配置GPT相关参数。

        第三步:在Platform中的Interrupt Controller中添加对应的Handler名。

        第四步:在MCU中添加对应的时钟来源。并打开时钟使能。

        第五步:时钟表。

        第六步:代码部分(配置了ADC0和ADC1)。初始化函数这些不做说明。

        以上就是配置GPT的全部。

代码详解

        找到对应函数,设置好参数即可。

注意事项

        使用NXP的PE调试器时,部分定时器中断通知函数无法进断点,时间到了也不会进去。但使用劳特巴赫则没有该问题。可能是PE的bug。

  • 10
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值