MCAL配置-PWM(EB23.0)

发布时间:2024年01月19日

PWM配置项的介绍

一、General

1、PwmDeInitApi

从代码中添加/删除Pwm_17_GtmCcu6_Delnit() API。

TRUE:Pwm_17_GtmCcu6_Delnit() API可供用户使用。

FALSE:Pwm_17_GtmCcu6_Delnit() API对用户不可用。

注意:默认情况下禁用Pwm_17_GtmCcu6_Delnit() API以最小化可执行代码大小。

2、PwmGetOutputState?

从代码中添加/删除Pwm_17_GtmCcu6_GetOutputState() API。

TRUE:Pwm_17_GtmCcu6_GetOutputState() API可供用户使用。

FALSE:Pwm_17_GtmCcu6_GetOutputState() API对用户不可用。

注意:默认情况下禁用Pwm_17_GtmCcu6_GetOutputState() API以最小化可执行代码大小。

3、PwmSetDutyCycle

从代码中添加/删除服务Pwm_17_GtmCcu6_SetDutyCycle() API。

TRUE: Pwm_17_GtmCcu6_SetDutyCycle() API对用户可用。

FALSE: Pwm_17_GtmCcu6_SetDutyCycle() API对用户不可用。

注意:Pwm_17_GtmCcu6_SetDutyCycle() API默认禁用以最小化可执行代码大小。

4、PwmSetOutputToIdle

从代码中添加/删除服务Pwm_17_GtmCcu6_SetOutputToldle()。

TRUE: Pwm_17_GtmCcu6_SetOutputToldle() API对用户可用。

FALSE: Pwm_17_GtmCcu6_SetOutputToldle() API对用户不可用。

注意:Pwm_17_GtmCcu6_SetOutputToldle() API默认禁用以最小化可执行代码大小。

5、PwmSetPeriodAndDuty

从代码中添加/删除服务Pwm_17_GtmCcu6_SetPeriodAndDuty()。

TRUE: Pwm_17_GtmCcu6_SetPeriodAndDuty() API可供用户使用。

FALSE: Pwm_17_GtmCcu6_SetPeriodAndDuty() API对用户不可用。

注意:默认情况下禁用Pwm_17_GtmCcu6_SetPeriodAndDuty() API以最小化可执行代码大小。

6、PwmVersionInfoApi

从代码中添加/删除服务Pwm_17_GtmCcu6_GetVersionInfo。

TRUE: Pwm_17_GtmCcu6_GetVersionInfo() API可供用户使用。

FALSE: Pwm_17_GtmCcu6_GetVersionInfo() API对用户不可用。

注意:默认情况下禁用Pwm_17_GtmCcu6_GetVersionInfo() API以最小化可执行代码大小。

7、PwmDevErrorDetect?

将(DET)检测和通知切换到ON或OFF。

TRUE:启用。

FALSE:禁用。

8、PwmMultiCoreErrorDetect

启用或禁用与多核相关的DET检测和报告。仅在启用DET/Safety时才适用。

9、PwmDutycycleUpdatedEndperiod

全局开关,使能在当前周期结束时更新占空比参数。

TRUE:更新占空比在当前生成的波形周期结束时完成(当前波形完成)。

FALSE:立即更新占空比(就在服务调用之后,当前波形更新为新的占空比值)。

默认值设置为“硬件默认值”。

注意:如果全局开关为TRUE,那么对于PWM_VARIABLE_PERIOD通道,占空比和周期将在当前生成的波形的周期结束时更新。

备注:此参数仅适用于GTM通道。

10、PwmIndex

11、PwmLowPowerStatesSupport?

由于不支持电源模式,该参数不启用。

添加/删除所有电源状态管理相关的API (PWM_SetPowerState;PWM_GetCurrentPowerState、PWM_GetTargetPowerState、PWM_PreparePowerState、PWM_Main_PowerTransitionManager)表示硬件提供低功耗状态管理。

12、PwmNotificationSupported?

通知支持的开关。

TRUE:支持通知。

FALSE:不支持通知。

注意:默认值设置为FALSE以最小化可执行代码大小。

13、PwmPeriodUpdatedEndperiod?

启用在当前周期结束时更新period参数的全局开关。

TRUE:可变周期通道的周期和占空比在当前生成波形的周期结束时更新(当前波形完成)。

FALSE:立即更新变周期通道的周期和占空比(就在服务调用之后,当前波形更新为新的周期值)。

PWM_FIXED_PERIOD、pwm_fixed_period_shift和PWM_FIXED_PERIOD_CENTER_ALIGNED类通道不受此参数设置的影响。

备注:默认值为“硬件默认值”。

备注:此参数仅适用于GTM通道。

14、PwmChannelCoherentSelection?

在当前周期结束时启用占空比/周期参数的智能通道更新开关。

TRUE:周期/占空比的更新是基于PWM通道特定配置PwmCoherentUpdate配置参数完成的。FALSE:根据PwmDutycycleUpdatedEndPeriod和PwmPeriodUpdatedEndPeriod全局参数更新周期/占空比。

备注:此参数仅适用于GTM通道。

15、PwmHandleShiftByOffset?

当PwmHandleShiftByOffset被启用时,移位的通道以偏移量开始,并将类似于固定周期通道。当不选择PwmHandleShiftByOffset时,从引用的固定周期通道触发移位通道。

备注:此参数仅适用于GTM通道。

16、PwmDutyShiftInTicks?

确定占空比和移位值是绝对的还是相对于周期的。

TRUE:占空比和移位值作为绝对刻度输入。

FALSE:输入占空比和移位值相对于周期。

0为0%,Ox8000为100%。

注意:默认值设置为FALSE,因为它是非autosar功能。

17、PwmEnable0Or100DutyNotification?

如果设置为ON,则固定周期和可变周期通道支持0%和100%的通知。

如果设置为OFF,则固定周期和可变周期通道的0%和100%不支持通知。

注意:默认值设置为FALSE以最小化可执行代码大小。

18、PwmPowerStateAsynchTransitionMode?

由于不支持电源模式,该参数不启用。

启用/禁用对异步电源状态转换的PWM驱动器的支持。

19、PwmSafetyEnable?

启用安全错误报告的开关(范围和合理性检查)。

注意:当启用此开关时,AUTOSAR DET默认启用。

默认情况下启用安全相关错误的检测,以确保在产品生命周期中解决安全问题。

20、PwmInitCheckApi?

开启安全初始化检查API。

注意:默认情况下启用安全相关错误的检测,以确保在产品生命周期中解决安全问题。

二、PwmChannel

1、PwmChannelId

PWM通道Id。该值被分配给从PwmChannel容器短名称派生的符号名称。Id值必须连续。注意:对每个新的PWM通道计算一个连续的值。选择最小通道ID作为默认值。

注意:PwmChannelld的值在一个配置集中应该是唯一的。

2、PwmAssignedHwUnit?

用于产生PWM的硬件资源:GTM或CCU6。

注意:对于无GTM的设备,此参数将只保留CCU6选项。在这种情况下,默认值将是CCU6。

3、PwmDutycycleDefault

通道占空比的默认值。可以根据PwmDutyShiftInTicks参数输入绝对刻度或相对百分比。

当PwmDutyShiftInTicks设置为OFF时,该值相对于周期。0是0%,0x8000是100%。

当PwmDutyShiftInTicks设置为ON时,该值以绝对刻度为单位。

0是0%,如果相同的值大于或等于PwmPeriodDefault,则占空比为100%。

范围:

如果TOM/ATOM/CCU6的PwmDutyShiftInTicks为STD_OFF,则0~ 0x8000。

如果PwmDutyShiftInTicks为STD_ON且模块为TOM或CCU6时,则0 ~ 0xFFFF。

如果PwmDutyShiftInTicks为STD_ON且模块为ATOM时,则0 ~ 0xFFFFFF。

注:硬件复位为FALSE时,默认为FALSE。

4、PwmIdleState?

表示信号停止(即调用)后PWM的输出状态Pwm_17_GtmCcu6_SetOutputToldle)。

注:默认为硬件复位值。

5、PwmPeriodDefault

用于初始化的周期值。

如果PwmChannelClass为PWM_FIXED_PERIOD或PWM_VARIABLE_PERIOD,则此值重要。

范围:

0 ~ OxFFFF,当模块为TOM或CCU6时;

0到OxFFFFFF,当模块是ATOM。

备注:默认值与硬件复位值匹配。

6、PwmPolarity?

定义每个PWM通道的起始极性。

注意:默认设置为PWM_LOW,因为硬件重置值为FALSE。

PWM_HIGH: PWM通道输出在周期开始时高,然后在达到占空率计数时低。

PWM_LOW: PWM通道输出在周期开始时低,然后在达到占空率计数时高。

7、PwmMcuClockReferencePoint?

包含对McuClockReferencePoint的引用。由于没有使用此参数,因此它是禁用的。

8、PwmShiftValue

根据PWM_FIXED_PERIOD类通道配置初始移位值。可以根据PwmDutyShiftinTicks参数输入绝对刻度或相对百分比。

当PwmDutyShiftInTicks设置为OFF时,该值相对于周期。

0是0%,0x8000是100%。

当PwmDutyShiftInTicks设置为ON时,该值以绝对刻度为单位。值0为0%。

与参考通道的PwmPeriodDefault值相同则为100%。

如果PwmChannelClass是pwm_fixed_period_shifts,这是重要的。

注意:默认设置为匹配硬件复位值。

9、PwmReferenceChannel ?

如果PwmChannelClass是pwm_fixed_period_shift或PWM_FIXED_PERIOD_CENTER_ALIGNED,则此值有效。

如果PwmChannelClass是pwm_fixed_period_shifts或PWM_FIXED_PERIOD_CENTER_ALIGNED,则必须提供引用通道。

引用通道只能为PWM_FIXED_PERIOD。

注意:默认值为空白,因为用户必须从MCU驱动程序中选择适当的参考值。

10、PwmCoherentUpdate?

启用在当前周期结束时更新占空比/周期参数的开关。

TRUE:周期/占空比的更新在当前生成波形的周期结束时完成(当前波形完成)。

FALSE:周期/占空比立即更新(就在服务调用之后,电流波形被切断)。

根据PwmChannelClass,更新结束周期可以为占空比工作,也可以为占空和周期工作。可变周期通道更新占空比和周期,而其他PwmChannelClass通道只更新占空比。

备注:此参数仅适用于GTM通道。

11、PwmChannelClass

PWM_FIXED_PERIOD: PWM通道有固定的周期。只能改变占空比。

PWM_FIXED_PERIOD_CENTER_ALIGNED:这类PWM通道是指周期与一个PWM_FIXED_PERIOD通道相关,占空比将正好落在周期的中间。只有占空比可以为这个通道类改变。

注意:当设备中有GTM硬件时,PWM_FIXED_PERIOD_CENTER_ALIGNED通道适用。

PWM_FIXED_PERIOD_SHIFTED:这类PWM通道是指周期与一个PWM_FIXED_PERIOD通道相关和占空比被要求的固定百分比移位。只能改变占空比。

PWM_VARIABLE_PERIOD:这类PWM通道具有可变周期和占空比。两者都可以在运行时更改。此通道不应被任何其他通道引用,也不引用任何通道。

注意:如果PwmSetPeriodAndDuty设置为false,PWM_VARIABLE_PERIOD不适用。

12、PwmNotification

PWM驱动程序使用PwmNotification来调用用户定义的函数,以生成相应通道的边缘。参数可以是通知函数的名称或地址(数值)。

注1:由于函数的名称是可配置的,所以默认值保持为NULL。

注2:PWM驱动程序不验证配置的功能名称或地址的正确性,责任落在用户身上。

如果McuAtomChannelEventHandledByDsadc /McuAtomChannelEventHandledByDsadc为TRUE,则当TOM/ATOM通道分别发生事件时,通知回调将由DSADC处理,而不是由PWM处理。因此,对于该通道,PwmNotification参数将不可编辑。

13、GtmTimerUsed?

分配给PWM通道的TOM或ATOM通道资源。

该参数列出所有GTM定时器通道(TOM或ATOM)。MCU中引用的定时器通道应该具有TomChannelUsage/AtomChannelUsage作为USED_BY_PWM_DRIVER。

注意:默认值设置为BLANK,因为用户必须从MCU驱动程序中选择适当的参考值。

14、GtmTimerClockSelect?

GTM时钟的选择。

15、GtmTimerPortPinSelect?

GTM针脚的选择。

文章来源:https://blog.csdn.net/mnkyjy/article/details/135699141
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。