跳转至

Pwm

1. 简介和功能概述

本规范规定了AUTOSAR基础软件模块PWM驱动程序的功能、API和配置。

每个PWM通道都链接到属于微控制器的硬件PWM。PWM信号的类型(例如中心对齐、左对齐等)不在本规范中定义,而是留给实现决定。

该驱动程序提供初始化和控制微控制器内部PWM级(脉冲宽度调制)的函数。PWM模块生成具有可变脉冲宽度的脉冲。它允许选择占空比和信号周期时间。

Figure1.png

2. 缩略语

AUTOSAR术语表中未包含的局部作用域的缩略语和缩写,必须出现在局部术语表中。

PWM Channel

链接到硬件PWM的数字标识符。

PWM Output State

定义PWM信号的输出状态。可以是:高、低。

PWM Idle State

空闲状态表示调用Pwm_SetOutputToIdle或Pwm_DeInit后PWM通道的输出状态。

PWM Polarity

定义每个PWM通道的起始输出状态。

PWM Duty cycle

定义与周期相关的起始电平(可以为高或低)的百分比。

PWM period

定义PWM信号的周期。

PWM

脉冲宽度调制(Pulse Width Modulation)

DEM

诊断事件管理器(Diagnostic Event Manager)

DET

默认错误跟踪器(Default Error Tracer)

MCU

微控制器单元(Microcontroller Unit)

PLL

锁相环(Phase Locked Loop)

ISR

中断服务例程(Interrupt Service Routine)

3. 相关文档

3.1. 输入文件

[1] Layered Software Architecture AUTOSAR_CP_EXP_LayeredSoftwareArchitecture.pdf

[2] General Requirements on SPAL AUTOSAR_CP_SRS_SPALGeneral.pdf

[3] General Requirements on Basic Software Modules AUTOSAR_CP_SRS_BSWGeneral.pdf

[4] Specification of Default Error Tracer AUTOSAR_CP_SWS_DefaultErrorTracer.pdf

[5] Specification of MCU Driver AUTOSAR_CP_SWS_MCUDriver.pdf

[6] Specification of ECU Configuration AUTOSAR_CP_TPS_ECUConfiguration.pdf

[7] Basic Software Module Description Template AUTOSAR_CP_TPS_BSWModuleDescriptionTemplate.pdf

[8] List of Basic Software Modules AUTOSAR_CP_TR_BSWModuleList

[9] General Specification of Basic Software Modules AUTOSAR_CP_SWS_BSWGeneral.pdf

3.2. 相关规范

AUTOSAR提供了基础软件模块通用规范[9](SWS BSW General),该规范同样适用于PWM驱动程序。

因此,SWS BSW General规范应被视为PWM驱动程序的附加必需规范。

4. 约束和假设

4.1. 限制

Pwm SWS不涵盖在通用I/O上模拟PWM。

电源状态控制API只有在MCAL驱动程序拥有完整的底层HW外设(即该HW外设不被其他MCAL模块访问)时才能实现。

4.2. 汽车域的适用性

无限制。

5. 对其他模块的依赖

PWM依赖于系统时钟。因此,系统时钟的更改(例如PLL开→PLL关)也会影响PWM硬件的时钟设置。

PWM驱动程序依赖于以下模块:

  • PORT驱动程序:设置端口引脚功能。
  • MCU驱动程序:设置预分频器、系统时钟和PLL。
  • DET:开发模式下的默认错误跟踪器。

文档087_AUTOSAR_ECU_Configuration包含第 4.6 章——时钟树配置,其中详细描述了向外设传递参考时钟信号的机制。

5.1. 文件结构

5.1.1. 代码文件结构

Pwm SWS不应定义代码文件结构。

5.1.2. 头文件结构

Pwm.c应包含Pwm.h和Det.h。

Pwm_Irq.c应包含Pwm.h。

6. 功能规格

6.1. 一般行为

PWM模块的所有函数(除Pwm_Init、Pwm_DeInit和Pwm_GetVersionInfo外)对于不同的PWM通道编号应是可重入的。

为了保持简单的模块实现,模块不必执行相关检查。

如果在运行时不同的任务或ISR中对同一PWM通道进行多次函数调用,Pwm模块的用户应确保完整性。

6.2. 时间单位 Ticks

6.2.1. 背景与原理

为了从寄存器值中获得时间,有必要知道振荡器频率、预分频器等。由于这些设置是在MCU和/或其他模块中进行的,因此无法计算此类时间。

因此,时间与ticks之间的转换应是上层的一部分。

6.2.2. 需求

PWM模块的API服务中使用的所有时间单位都应是ticks单位。

6.3. 硬件低功耗状态的支持和管理

某些PWM HW模块允许被设置为某些可降低功耗的运行模式,代价可能是更慢的反应时间、更低的性能或完全不可用。每个PWM模块可以支持一种或多种低功耗运行模式,其中全功率模式始终存在并在启动时默认设置。

6.3.1. 背景

PWM驱动程序提供电源状态控制API和后台处理机制,以处理异步电源状态更改过程(即请求后不会立即完成、而需要一些较长操作的电源状态更改)。

假设源自ECU和SW架构的所有约束已由上层(应用程序、服务层中的模式管理、处理外设控制的IoHwAbstraction组件)满足,因此控制范围仅限于PWM HW外设。

PWM驱动程序执行对操作序列的检查,以避免在先前的请求仍在处理中时请求不同的电源状态,或在未请求相同准备的情况下激活电源状态。

PWM模块应将电源控制能力作为可选功能支持。本模块既不强制只使用启用了电源控制的MCU,也不强制配置相同的MCU。相反,它在供应商支持的情况下提出了一种处理电源状态的方法。

6.3.2. 需求

当相应的配置参数PwmLowPowerStatesSupport设置为TRUE时,PwmDriver应支持电源状态更改及其API。

如果参数PwmLowPowerStatesSupport启用,则应生成API Pwm_PreparePowerState、Pwm_SetPowerState、Pwm_GetCurrentPowerState、Pwm_GetTargetPowerState,并应使用它们来管理和获取电源状态转换的信息。

API Pwm_GetTargetPowerState和Pwm_GetCurrentPowerState应分别用于收集请求的Pwm电源状态和目标Pwm电源状态的信息。

API Pwm_PreparePowerState应用于启动电源状态转换。

在完成电源状态的准备后,应使用API Pwm_SetPowerState来达到Pwm模块请求的电源状态。

为了避免不一致的电源状态条件,某些API(Pwm_SetPowerState、Pwm_PreparePowerState)必须以给定的顺序调用,否则将存储错误(如果启用了DET跟踪)并中断动作。Pwm驱动程序跟踪调用序列。

Pwm驱动程序应跟踪API Pwm_SetPowerState和Pwm_PreparePowerState的调用顺序。如果在调用第二个API之前调用了第一个API,应存储DET条目且不执行该动作。

如果参数PwmLowPowerStatesSupport设置为TRUE,Pwm模块应跟踪当前和目标电源状态。

如果PwmLowPowerStatesSupport设置为TRUE,初始化后模块的电源状态应始终为FULL POWER。

Pwm驱动程序应支持同步和异步电源状态转换,具体取决于配置参数PwmPowerStateAsynchTransitionMode的值。

如果配置参数PwmPowerStateAsynchTransitionMode设置为FALSE,准备过程和设置过程应在相应API返回时即视为完成。

如果配置参数PwmPowerStateAsynchTransitionMode设置为TRUE,准备过程应在相应API返回后在后台继续,并通过配置的回调通知其完成。

6.4. 占空比分辨率和缩放

占空比参数的宽度为 16 位。

Pwm模块应对占空比遵循以下缩放方案:

  • 0x0000 表示 0%。
  • 0x8000 表示 100%。0x8000 在允许用 16 位值表示 100% 占空比的同时提供最高分辨率。

作为实现指南,给出以下源代码示例:

AbsoluteDutyCycle = ((uint32)AbsolutePeriodTime * RelativeDutyCycle) >> 15;

6.5. 版本检查

详情请参阅SWS_BSWGeneral中第 5.1.8 章"Version Check"。

6.6. 错误分类

6.6.1. 开发错误

错误类型 相关错误代码 错误值
API Pwm_Init服务以错误参数调用 PWM_E_INIT_FAILED 0x10
未经模块初始化使用API服务 PWM_E_UNINIT 0x11
使用无效的通道标识符的API服务 PWM_E_PARAM_CHANNEL 0x12
在配置为固定周期的PWM通道上使用未授权的PWM服务 PWM_E_PERIOD_UNCHANGEABLE 0x13
在PWM驱动程序已初始化时调用API Pwm_Init服务 PWM_E_ALREADY_INITIALIZED 0x14
API Pwm_GetVersionInfo以NULL参数调用。 PWM_E_PARAM_POINTER 0x15
PWM模块不支持请求的电源状态。 PWM_E_POWER_STATE_NOT_SUPPORTED 0x17
从当前电源状态无法到达请求的电源状态 PWM_E_TRANSITION_NOT_POSSIBLE 0x18
调用API Pwm_SetPowerState之前未调用API Pwm_PreparePowerState。 PWM_E_PERIPHERAL_NOT_PREPARED 0x19

当API服务未经模块初始化而使用时,PWM驱动程序模块应报告开发错误"PWM_E_UNINIT (0x11)"。

当API服务使用无效的通道标识符时,PWM驱动程序模块应报告开发错误"PWM_E_PARAM_CHANNEL (0x12)"。

在配置为固定周期的PWM通道上使用未授权的PWM服务时,PWM驱动程序模块应报告开发错误"PWM_E_PERIOD_UNCHANGEABLE (0x13)"。

当API Pwm_Init服务在PWM驱动程序已初始化时被调用,PWM驱动程序模块应报告开发错误"PWM_E_ALREADY_INITIALIZED(0x14)"。

如果此API以不支持的电源状态调用,或外设完全不支持低功耗状态,API应报告开发错误PWM_E_POWER_STATE_NOT_SUPPORTED。

如果无法从当前电源状态直接到达请求的电源状态,API应报告开发错误PWM_E_TRANSITION_NOT_POSSIBLE。

如果HW单元先前未通过使用API Pwm_PreparePowerState()为目标电源状态做准备,API应报告开发错误PWM_E_PERIPHERAL_NOT_PREPARED。

有关错误检测的更多详情,请参阅API参数检查一章。

6.6.2. 运行时错误

错误类型 相关错误代码 错误值
在PWM模块仍在使用时调用API Pwm_SetPowerState。 PWM_E_NOT_DISENGAGED 0x16

当调用此API时一个或多个HW通道(如适用)处于不同于IDLE(或类似非运行状态)的状态,和/或仍有为HW模块通道注册的通知,API应报告运行时错误PWM_E_NOT_DISENGAGED。

6.6.3. 瞬态故障

没有瞬态故障。

6.6.4. 生产错误

没有生产错误。

6.6.5. 扩展生产错误

没有扩展生产错误。

7. API规范

7.1. 导入的类型

本章列出了从其他模块包含的所有类型。

模块 头文件 导入的类型
Std Std_Types.h Std_ReturnType
Std Std_Types.h Std_VersionInfoType

7.2. 类型定义

7.2.1. Pwm_ChannelType

类型,派生自 uint。范围为:这是实现特定的,但并非所有值在该类型内都有效。应选择此类型以在特定微控制器平台上具有最高效的实现。PWM通道的数字标识符。可通过Pwm.h获得。

7.2.2. Pwm_PeriodType

类型,派生自 uint。范围为:8..32 位 —— 实现特定。应选择此类型以在特定微控制器平台上具有最高效的实现。PWM通道周期的定义。可通过Pwm.h获得。

7.2.3. Pwm_OutputStateType

枚举类型,取值范围:

  • PWM_HIGH(0x00):PWM通道处于高状态。
  • PWM_LOW(0x01):PWM通道处于低状态。

PWM通道的输出状态。可通过Pwm.h获得。

7.2.4. Pwm_EdgeNotificationType

枚举类型,取值范围:

  • PWM_RISING_EDGE(0x00):PWM输出信号出现上升沿时将调用通知。
  • PWM_FALLING_EDGE(0x01):PWM输出信号出现下降沿时将调用通知。
  • PWM_BOTH_EDGES(0x02):PWM输出信号出现上升沿或下降沿时将调用通知。

PWM通道边沿通知类型的定义。可通过Pwm.h获得。

7.2.5. Pwm_ChannelClassType

枚举类型,取值范围:

  • PWM_VARIABLE_PERIOD(0x00):PWM通道具有可变周期。占空比和周期都可以更改。
  • PWM_FIXED_PERIOD(0x01):PWM通道具有固定周期。只能更改占空比。
  • PWM_FIXED_PERIOD_SHIFTED(0x02):PWM通道具有固定的移位周期。无法更改(仅当硬件支持时)。

定义PWM通道的类。可通过Pwm.h获得。

7.2.6. Pwm_ConfigType

结构类型。硬件相关结构。初始化数据结构的内容是硬件特定的。这是包含PWM驱动程序初始化数据的数据结构类型。可通过Pwm.h获得。

7.2.7. Pwm_PowerStateRequestResultType

枚举类型,取值范围:

  • PWM_SERVICE_ACCEPTED(0x00):电源状态更改已执行。
  • PWM_NOT_INIT(0x01):PWM模块未初始化。
  • PWM_SEQUENCE_ERROR(0x02):API调用顺序错误。
  • PWM_HW_FAILURE(0x03):HW模块有故障,使其无法进入所需的电源状态。
  • PWM_POWER_STATE_NOT_SUPP(0x04):PWM模块不支持请求的电源状态。
  • PWM_TRANS_NOT_POSSIBLE(0x05):PWM模块无法从当前电源状态直接转换到请求的电源状态,或HW外设仍忙。

与电源状态转换相关的请求的结果。可通过Pwm.h获得。

7.2.8. Pwm_PowerStateType

枚举类型,取值范围:

  • 1..255 —— 功耗递减的电源模式。

当前激活或设置为目标电源状态的电源状态。可通过Pwm.h获得。

强制参数:

  • 分配的HW通道
  • 周期的默认值
  • 占空比的默认值
  • 极性(高或低)
  • 空闲状态高或低
  • 通道类:
  • 固定周期
  • 固定周期、移位(如果硬件支持)
  • 可变周期

可选参数(如果硬件支持):

  • 通道相移
  • 相移的参考通道
  • 微控制器特定的通道属性

7.3. 函数定义

7.3.1. Pwm_Init

说明: PWM初始化服务。可通过Pwm.h获得。本服务为同步调用,不可重入。参数 ConfigPtr(in):指向配置集的指针。

void Pwm_Init (const Pwm_ConfigType* ConfigPtr)

函数Pwm_Init应根据ConfigPtr中指定的参数初始化所有内部变量和所使用的微控制器PWM结构。

函数Pwm_Init应只初始化已配置的资源,不应触及配置文件中未配置的资源。

函数Pwm_Init应以配置的默认值启动所有PWM通道。

如果占空比参数等于:

  • 0% 或 100%:则PWM输出信号应处于与配置的极性参数相对应的状态。
  • 0% 且 <100%:则PWM输出信号应根据参数周期、占空比和配置的极性进行调制。

函数Pwm_Init应禁用所有通知。

原因是这些通知的用户可能尚未准备好。他们可以调用Pwm_EnableNotification来启动通知。

Pwm模块的用户不应在运行操作期间调用函数Pwm_Init。

Pwm模块的环境在调用Pwm_Init之前不应调用Pwm模块的任何函数。

如果启用了开发错误检测,在PWM驱动程序和硬件已初始化时调用例程Pwm_Init将导致开发错误PWM_E_ALREADY_INITIALIZED。所需功能应保持不执行任何动作。

通过执行Pwm_Init()函数重新初始化Pwm驱动程序需要先通过执行Pwm_DeInit()进行去初始化。

关于错误检测,相关需求适用于函数Pwm_Init。

7.3.2. Pwm_DeInit

说明: PWM去初始化服务。可通过Pwm.h获得。本服务为同步调用,不可重入。

void Pwm_DeInit (void)

函数Pwm_DeInit应去初始化PWM模块。

函数Pwm_DeInit应将PWM输出信号的状态设置为空闲状态。

函数Pwm_DeInit应禁用PWM中断和PWM信号边沿通知。

函数Pwm_DeInit应可通过配置参数PwmDeInitApi在预编译时配置开/关。

函数Pwm_DeInit应可通过配置参数PwmDeInitApi {PWM_DE_INIT_API}配置开/关。

关于错误检测,相关需求适用于函数Pwm_DeInit。

7.3.3. Pwm_SetDutyCycle

说明: 设置PWM通道占空比的服务。可通过Pwm.h获得。本服务为异步调用;对不同通道编号可重入。参数 ChannelNumber(in):PWM的数字标识符。参数 DutyCycle(in):最小值=0x0000,最大值=0x8000。

void Pwm_SetDutyCycle (Pwm_ChannelType ChannelNumber, uint16 DutyCycle)

函数Pwm_SetDutyCycle应设置PWM通道的占空比。

当请求的占空比为 0% 或 100% 时,函数Pwm_SetDutyCycle应将PWM输出状态设置为PWM_HIGH或PWM_LOW,同时考虑配置的极性参数和请求的占空比。

因此,对于请求的 0% 占空比,输出将是配置的极性参数的反相;对于 100% 占空比,输出将等于配置的极性参数。

当占空比 > 0% 且 < 100% 时,函数Pwm_SetDutyCycle应根据参数周期、占空比和配置的极性调制PWM输出信号。

如果实现支持并使用PwmDutycycleUpdatedEndperiod配置,函数Pwm_SetDutyCycle应始终在周期结束时更新占空比。

关于占空比参数的格式定义,相关需求适用于函数Pwm_SetDutyCycle。

关于占空比参数的缩放定义,相关需求适用于函数Pwm_SetDutyCycle。

驱动程序应禁止PWM输出信号上的尖峰。

关于错误检测,相关需求适用于函数Pwm_SetDutyCycle。

函数Pwm_SetDutyCycle应可通过配置参数PwmSetDutyCycle在预编译时配置开/关。

函数Pwm_SetDutyCycle应可通过配置参数PwmSetDutyCycle {PWM_SET_DUTY_CYCLE_API}配置开/关。

7.3.4. Pwm_SetPeriodAndDuty

说明: 设置PWM通道周期和占空比的服务。可通过Pwm.h获得。本服务为异步调用;对不同通道编号可重入。参数 ChannelNumber(in):PWM的数字标识符。参数 Period(in):PWM信号的周期。参数 DutyCycle(in):最小值=0x0000,最大值=0x8000。

void Pwm_SetPeriodAndDuty (
    Pwm_ChannelType ChannelNumber, Pwm_PeriodType Period, uint16 DutyCycle
)

函数Pwm_SetPeriodAndDuty应设置PWM通道的周期和占空比。

如果实现支持并使用PwmPeriodUpdatedEndperiod配置,函数Pwm_SetPeriodAndDuty应始终在当前周期结束时更新周期。

更新PWM周期和占空比时,驱动程序应抑制PWM输出信号上的任何尖峰。

PWM占空比参数是保持频率和占空比之间一致性所必需的。有关占空比参数的缩放和格式定义,请参阅相关需求。

关于错误检测,相关需求适用于函数Pwm_SetPeriodAndDuty。

函数Pwm_SetPeriodAndDuty应只允许为声明为可变周期类型的PWM通道更改周期。

函数Pwm_SetPeriodAndDuty应可通过配置参数PwmSetPeriodAndDuty在预编译时配置开/关。

函数Pwm_SetPeriodAndDuty应可通过配置参数PwmSetPeriodAndDuty {PWM_SET_PERIOD_AND_DUTY_API}配置开/关。

如果周期设置为零,则占空比的设置无关紧要。在这种情况下,输出应为零(零百分比占空比)。

7.3.5. Pwm_SetOutputToIdle

说明: 将PWM输出设置为配置的空闲状态的服务。可通过Pwm.h获得。本服务为异步调用;对不同通道编号可重入。参数 ChannelNumber(in):PWM的数字标识符。

void Pwm_SetOutputToIdle (Pwm_ChannelType ChannelNumber)

函数Pwm_SetOutputToIdle应立即将PWM输出设置为配置的空闲状态。

关于错误检测,相关需求适用于函数Pwm_SetOutputToIdle。

函数Pwm_SetOutputToIdle应可通过配置参数PwmSetOutputToIdle在预编译时配置开/关。

函数Pwm_SetOutputToIdle应可通过配置参数PwmSetOutputToIdle {PWM_SET_OUTPUT_TO_IDLE_API}配置开/关。

调用函数Pwm_SetOutputToIdle后,可变周期类型通道应使用API Pwm_SetPeriodAndDuty()重新激活,以用新传递的周期激活PWM通道。

调用函数Pwm_SetOutputToIdle后,通道应使用API Pwm_SetDutyCycle()重新激活,以用旧周期激活PWM通道。

调用函数Pwm_SetOutputToIdle后,固定周期类型通道应只使用API Pwm_SetDutyCycle()重新激活,以用旧周期激活PWM通道。

7.3.6. Pwm_GetOutputState

说明: 读取PWM输出信号内部状态的服务。可通过Pwm.h获得。本服务为同步调用;对不同通道编号可重入。参数 ChannelNumber(in):PWM的数字标识符。返回值:Pwm_OutputStateType,PWM_HIGH 表示PWM输出状态为高;PWM_LOW 表示PWM输出状态为低。

Pwm_OutputStateType Pwm_GetOutputState (Pwm_ChannelType ChannelNumber)

函数Pwm_GetOutputState应读取PWM输出信号的内部状态并按下图定义返回。

(该图展示了从微控制器PWM单元经端口逻辑到端口引脚的读取路径)

关于错误检测,相关需求适用于函数Pwm_GetOutputState。

函数Pwm_GetOutputState应可通过配置参数PwmGetOutputState在预编译时配置开/关。

函数Pwm_GetOutputState应可通过配置参数PwmGetOutputState {PWM_GET_OUTPUT_STATE_API}配置开/关。

由于实时约束和PWM通道的设置(项目相关),输出状态可能在调用服务Pwm_GetOutputState之后立即被修改。

如果在模块初始化之前或以无效通道调用Pwm_GetOutputState,它应返回PWM_LOW。

7.3.7. Pwm_DisableNotification

说明: 禁用PWM信号边沿通知的服务。可通过Pwm.h获得。本服务为异步调用;对不同通道编号可重入。参数 ChannelNumber(in):PWM的数字标识符。

void Pwm_DisableNotification (Pwm_ChannelType ChannelNumber)

函数Pwm_DisableNotification应禁用PWM信号边沿通知。

函数Pwm_DisableNotification应可通过配置参数PwmNotificationSupported在预编译时配置开/关。

函数Pwm_DisableNotification应可通过配置参数PwmNotificationSupported {PWM_NOTIFICATION_SUPPORTED}配置开/关。

关于错误检测,相关需求适用于函数Pwm_DisableNotification。

7.3.8. Pwm_EnableNotification

说明: 根据通知参数启用PWM信号边沿通知的服务。可通过Pwm.h获得。本服务为异步调用;对不同通道编号可重入。参数 ChannelNumber(in):PWM的数字标识符。参数 Notification(in):通知类型PWM_RISING_EDGE或PWM_FALLING_EDGE或PWM_BOTH_EDGES。

void Pwm_EnableNotification (
    Pwm_ChannelType ChannelNumber, Pwm_EdgeNotificationType Notification
)

函数Pwm_EnableNotification应根据通知参数启用PWM信号边沿通知。

函数Pwm_EnableNotification应取消挂起的中断。

函数Pwm_EnableNotification应可通过配置参数PwmNotificationSupported在预编译时配置开/关。

函数Pwm_EnableNotification应可通过配置参数PwmNotificationSupported {PWM_NOTIFICATION_SUPPORTED}配置开/关。

关于错误检测,相关需求适用于函数Pwm_EnableNotification。

7.3.9. Pwm_SetPowerState

说明: 此API配置Pwm模块,使其进入已准备的电源状态(从预定义的一组已配置电源状态中选择)。可通过Pwm.h获得。本服务为同步调用,不可重入。参数 Result(out):如果API返回E_OK:PWM_SERVICE_ACCEPTED:电源状态更改已执行。如果API返回E_NOT_OK:PWM_NOT_INIT:PWM模块未初始化。PWM_SEQUENCE_ERROR:API调用顺序错误。PWM_HW_FAILURE:HW模块有故障,使其无法进入所需的电源状态。返回值:Std_ReturnType,E_OK:电源模式已更改;E_NOT_OK:请求被拒绝。

Std_ReturnType Pwm_SetPowerState (Pwm_PowerStateRequestResultType* Result)

此API配置HW以进入给定的电源状态。启用此转换的所有预备动作(例如将所有通道设置为IDLE状态、注销所有通知等)必须已由负责的SWC(例如IoHwAb)采取。

此API不应执行预备性的隐式电源状态更改(即如果无法从当前电源状态到达请求的电源状态,则不应执行中间电源状态更改,请求应被拒绝)。

如果目标电源状态与当前电源状态相同,则不执行任何动作,API立即以E_OK结果返回。

如果请求正常电源状态,API应引用Pwm_Init使用的相同容器中包含的必要参数。

不应对正常(即全功率)电源模式使用单独的容器或硬编码数据,以避免初始化阶段使用的初始化参数与电源状态更改期间使用的参数之间出现错位。

对于其他电源状态,只应在此API的上下文中执行电源状态转换特定的重新配置(即此API不能用于向Pwm模块应用全新的配置)。不应进行与电源状态转换无严格关系的任何其他重新配置。

API应引用与所需电源状态相关的配置容器,以导出该状态的某些特定特征(例如电源状态的支持)。

如果激活了开发错误报告:

如果此API在初始化HW单元之前被调用,API应报告开发错误PWM_E_UNINIT。

当调用此API时一个或多个HW通道(如适用)处于不同于IDLE(或类似非运行状态)的状态,和/或仍有为HW模块通道注册的通知,API应报告运行时错误PWM_E_NOT_DISENGAGED。

如果此API以不支持的电源状态调用,或外设完全不支持低功耗状态,API应报告开发错误PWM_E_POWER_STATE_NOT_SUPPORTED。

如果无法从当前电源状态直接到达请求的电源状态,API应报告开发错误PWM_E_TRANSITION_NOT_POSSIBLE。

如果HW单元先前未通过使用API Pwm_PreparePowerState()为目标电源状态做准备,API应报告开发错误PWM_E_PERIPHERAL_NOT_PREPARED。

7.3.10. Pwm_GetCurrentPowerState

说明: 此API返回PWM HW单元的当前电源状态。可通过Pwm.h获得。本服务为同步调用,不可重入。参数 CurrentPowerState(out):在此参数中返回PWM HW单元的当前电源模式。Result:如果API返回E_OK:PWM_SERVICE_ACCEPTED:返回了当前电源模式。如果API返回E_NOT_OK:PWM_NOT_INIT:PWM模块未初始化。返回值:Std_ReturnType,E_OK:模式可读取;E_NOT_OK:服务被拒绝。

Std_ReturnType Pwm_GetCurrentPowerState (
    Pwm_PowerStateType* CurrentPowerState, Pwm_PowerStateRequestResultType* Result
)

此API返回HW单元的电源状态。

如果激活了开发错误报告:

如果此API在初始化HW单元之前被调用,API应报告开发错误PWM_E_UNINIT。

7.3.11. Pwm_GetTargetPowerState

说明: 此API返回PWM HW单元的目标电源状态。可通过Pwm.h获得。本服务为同步调用,不可重入。参数 TargetPowerState(out):在此参数中返回PWM HW单元的目标电源模式。Result:如果API返回E_OK:PWM_SERVICE_ACCEPTED:返回了目标电源模式。如果API返回E_NOT_OK:PWM_NOT_INIT:PWM模块未初始化。返回值:Std_ReturnType,E_OK:模式可读取;E_NOT_OK:服务被拒绝。

Std_ReturnType Pwm_GetTargetPowerState (
    Pwm_PowerStateType* TargetPowerState, Pwm_PowerStateRequestResultType* Result
)

此API返回HW单元请求的电源状态。如果没有正在进行的转换,它应与当前电源状态一致。

除HW故障外,此API被认为始终成功。

如果激活了开发错误报告:

如果此API在初始化HW单元之前被调用,API应报告开发错误PWM_E_UNINIT。

7.3.12. Pwm_PreparePowerState

说明: 此API启动允许PWM HW模块进入请求的电源状态所需的过程。可通过Pwm.h获得。本服务为同步调用,不可重入。参数 PowerState(in):打算达到的目标电源状态。参数 Result(out):如果API返回E_OK:PWM_SERVICE_ACCEPTED:PWM模块电源状态准备已启动。如果API返回E_NOT_OK:PWM_NOT_INIT:PWM模块未初始化。PWM_SEQUENCE_ERROR:API调用顺序错误(当前电源状态 = 目标电源状态)。PWM_POWER_STATE_NOT_SUPP:PWM模块不支持请求的电源状态。PWM_TRANS_NOT_POSSIBLE:PWM模块无法从当前电源状态直接转换到请求的电源状态,或HW外设仍忙。返回值:Std_ReturnType,E_OK:准备过程已启动;E_NOT_OK:服务被拒绝。

Std_ReturnType Pwm_PreparePowerState (
    Pwm_PowerStateType PowerState, Pwm_PowerStateRequestResultType* Result
)

此API启动使HW模块能够进入目标电源状态所需的所有动作。

外设的可操作性取决于电源状态和HW特性。集成人员应知道这些属性,是否使用外设的决定由其负责。

如果目标电源状态与当前电源状态相同,则不执行任何动作,API立即以E_OK结果返回。

前提条件的责任留给环境。

如果激活了开发错误报告:

如果此API在初始化HW单元之前被调用,API应报告开发错误PWM_E_UNINIT。

如果此API以不支持的电源状态调用,或外设完全不支持低功耗状态,API应报告开发错误PWM_E_POWER_STATE_NOT_SUPPORTED。

如果无法从当前电源状态直接到达请求的电源状态,API应报告开发错误PWM_E_TRANSITION_NOT_POSSIBLE。

达到目标电源状态所需的所有异步操作都可以在Pwm_Main_PowerTransitionManager的上下文中在后台执行。

7.3.13. Pwm_GetVersionInfo

说明: 返回本模块版本信息的服务。可通过Pwm.h获得。本服务为同步调用,可重入。参数 versioninfo(out):指向存储本模块版本信息位置的指针。

void Pwm_GetVersionInfo (Std_VersionInfoType* versioninfo)

7.4. 回调通知

由于PWM驱动程序是架构最底层的模块,它不为下层模块提供任何回调函数。

7.5. 调度函数

PWM驱动程序提供的所有服务都是同步性质的,异步电源转换管理除外(如果如此配置)。

如果配置了同步电源转换管理,则不生成调度API。

7.5.1. Pwm_Main_PowerTransitionManager

说明: 此API被周期性调用,监督电源状态转换,检查模块的就绪状态并发出回调IoHwAb_Pwm_NotifyReadyForPowerState\<Mode>(参见PwmPowerStateReadyCbkRef配置参数)。可通过SchM_Pwm.h获得。

void Pwm_Main_PowerTransitionManager (void)

此API执行完成Pwm_PreparePowerState()请求的电源状态转换所需的任何非即时动作。

调度速率应由Pwm MainSchedulePeriod定义并且是可变的,因为仅在请求了转换时才需要调用该函数。

此API还应仅在选择了异步模式时,向最终注册的用户(IoHwAb)发出回调通知(如已配置)。

如果PWM模块未初始化,此函数应直接返回,不进行任何进一步处理。这是为了避免处理未初始化的变量。不应输入开发错误,因为此条件可以在启动阶段轻松验证(初始化完成前启动的任务)。

理由:在启动阶段,可能会出现OS已调度调用主函数的任务,而某些模块尚未初始化。这不是真正的错误条件,尽管需要处理,即不执行而返回。

尽管转换状态监视功能是强制的,但此API的实现是可选的,这意味着如果HW允许通过其他方式传递通知并监视转换状态,则可以跳过此函数的实现。

7.6. 期望接口

本章列出了需要从其他模块获得的所有接口。

7.6.1. 强制接口

本章定义了为实现模块核心功能而需要的所有接口。

由于本模块是MCAL层的一部分,它直接访问微控制器寄存器,因此不需要任何下层接口。

7.6.2. 可选接口

本章定义了为实现模块可选功能而需要的所有接口。

API 函数 头文件 描述
Det_ReportError Det.h 报告开发错误的服务

7.6.3. 可配置接口

本章列出了目标函数可被配置的所有接口。目标函数通常是回调函数。这类接口的名称不固定,因为它们是可配置的。

说明: Pwm模块应根据对通道\<#Channel>最后一次Pwm_EnableNotification的调用调用函数Pwm_Notification_\<#Channel>。可通过Pwm_Externals.h获得。本服务为同步调用;取决于PWM用户的实现。

void Pwm_Notification_\<#Channel\> (void)

Pwm模块应根据对通道\<#Channel>最后一次Pwm_EnableNotification和Pwm_DisableNotification的调用调用函数Pwm_Notification_\<#Channel>。

Pwm模块应复位与通知Pwm_Notification_\<#Channel>关联的中断标志。

只有当配置参数PwmNotificationSupported为ON时,Pwm模块才应提供Pwm_EnableNotification的功能。

只有当配置参数PwmNotificationSupported为ON时,Pwm模块才应提供Pwm_DisableNotification的功能。

只有当配置参数PwmNotificationSupported为ON时,Pwm模块才应复位与通知关联的中断标志。

说明: 当模式\<#Mode>的请求电源状态准备完成时,PWM驱动程序应调用此API。可通过IoHwAb_Pwm.h获得。本服务为同步调用,不可重入。

void IoHwAb_Pwm_NotifyReadyForPowerState\<#Mode\> (void)

如果PWM驱动程序配置为支持具有异步转换的电源状态管理,应调用此API以向IoHwAb模块发出电源转换准备阶段完成的信号。

这是一个回调,此API应在IoHwAb组件中实现。

7.7. API 参数检查

如果为Pwm模块启用了开发错误检测并发生了开发错误,则相应的PWM函数应向默认错误跟踪器报告错误。

如果为Pwm模块启用了开发错误检测并发生了开发错误,则相应的PWM函数应跳过所需功能,以避免数据或硬件寄存器的损坏,不执行任何动作而离开函数。

如果为Pwm模块启用了开发错误检测:如果在调用Pwm_Init之前调用任何函数(Pwm_Init除外),被调用的函数应引发开发错误PWM_E_UNINIT。

如果为Pwm模块启用了开发错误检测:API Pwm_SetPeriodAndDuty()应检查给定的PWM通道是否为通道类类型PWM_VARIABLE_PERIOD。如果不是,应引发开发错误PWM_E_PERIOD_UNCHANGEABLE。

如果为Pwm模块启用了开发错误检测:PWM函数应检查参数ChannelNumber,如果参数ChannelNumber无效,应引发开发错误PWM_E_PARAM_CHANNEL。

8. 配置规范

总体而言,本章定义配置参数及其到容器(container)的聚类组织。为支持本规范,第 8.1 章描述相关基础知识,并规定参数规范所应使用的模板(表格)。我们有意将第 8.1 章保留在规范中,以保证可理解性。

第 8.2 章规定 PWM 驱动模块的结构(容器)与参数。

第 8.3 章规定 PWM 驱动模块的发布信息。

8.1. 如何阅读本章

详情请参阅 SWS_BSWGeneral 中的第 10.1 章 "Introduction to configuration specification"(配置规范导论)。

8.2. 容器与配置参数

以下各节汇总所有配置参数。各参数的详细含义见第 6 章和第 7 章。

PWM 模块应拒绝实现所不支持的、带有分区映射的配置。

8.2.1. Pwm

SWS 条目
模块名称 Pwm
描述 PWM(脉冲宽度调制)模块的配置。
Post-Build 变体支持 true
支持的配置变体 VARIANT-POST-BUILD, VARIANT-PRE-COMPILE
容器名称 多重性 作用域/依赖
PwmChannelConfigSet 1 此容器包含 AUTOSAR Pwm 模块的配置参数与子容器。
PwmConfigurationOfOptApiServices 1 可选 API 服务的配置。

8.2.2. PwmGeneral

SWS 条目
容器名称 PwmGeneral
父容器 Pwm
描述 --
配置参数 见下方参数表
SWS 条目
参数名称 PwmDevErrorDetect
父容器 PwmGeneral
描述 开启或关闭开发错误检测与通知(true:启用检测与通知;false:禁用检测与通知)。
多重性 1
类型 EcucBooleanParamDef
默认值 false
Post-Build 变体值 false
值配置类 Pre-compile time:x(All Variants);Link time:-;Post-build time:-
作用域/依赖 scope: local
SWS 条目
参数名称 PwmDutycycleUpdatedEndperiod
父容器 PwmGeneral
描述 启用在当前周期结束时更新占空比参数的开关(TRUE:占空比的更新在当前生成波形的周期结束时进行(当前波形执行完毕);FALSE:立即更新周期/占空比(服务调用后立即执行,当前波形被切断))。
多重性 1
类型 EcucBooleanParamDef
默认值 --
Post-Build 变体值 false
值配置类 Pre-compile time:x(All Variants);Link time:-;Post-build time:-
作用域/依赖 scope: local
SWS 条目
参数名称 PwmIndex
父容器 PwmGeneral
描述 规定此模块实例的 InstanceId。若只存在一个实例,其 Id 应为 0。
多重性 1
类型 EcucIntegerParamDef
范围 0 .. 4294967295
默认值 --
Post-Build 变体值 false
值配置类 Pre-compile time:x(All Variants);Link time:-;Post-build time:-
作用域/依赖 scope: local
SWS 条目
参数名称 PwmLowPowerStatesSupport
父容器 PwmGeneral
描述 添加/移除所有电源状态管理相关 API(Pwm_SetPowerState、Pwm_GetCurrentPowerState、Pwm_GetTargetPowerState、Pwm_PreparePowerState、Pwm_Main_PowerTransitionManager),指示硬件是否提供低电源状态管理。
多重性 0..1
类型 EcucBooleanParamDef
默认值 false
Post-Build 变体值 false
多重性配置类 Pre-compile time:x(All Variants);Link time:-;Post-build time:-
值配置类 Pre-compile time:x(All Variants);Link time:-;Post-build time:-
作用域/依赖 scope: local
SWS 条目
参数名称 PwmNotificationSupported
父容器 PwmGeneral
描述 指示是否支持通知的开关。
多重性 1
类型 EcucBooleanParamDef
默认值 --
Post-Build 变体值 false
值配置类 Pre-compile time:x(All Variants);Link time:-;Post-build time:-
作用域/依赖 scope: local
SWS 条目
参数名称 PwmPeriodUpdatedEndperiod
父容器 PwmGeneral
描述 启用在当前周期结束时更新周期参数的开关(TRUE:周期/占空比的更新在当前生成波形的周期结束时进行(当前波形执行完毕);FALSE:立即更新周期/占空比(服务调用后立即执行,当前波形被切断))。
多重性 1
类型 EcucBooleanParamDef
默认值 --
Post-Build 变体值 false
值配置类 Pre-compile time:x(All Variants);Link time:-;Post-build time:-
作用域/依赖 scope: local
SWS 条目
参数名称 PwmPowerStateAsynchTransitionMode
父容器 PwmGeneral
描述 启用/禁用 PWM 驱动对异步电源状态转换的支持。
多重性 0..1
类型 EcucBooleanParamDef
默认值 false
Post-Build 变体多重性 false
Post-Build 变体值 false
多重性配置类 Pre-compile time:x;Link time:-;Post-build time:-
值配置类 Pre-compile time:x;Link time:-;Post-build time:-
作用域/依赖 scope: local 依赖:仅当参数 PwmLowPowerStatesSupport 设为 true 时才应配置此参数。
SWS 条目
参数名称 PwmEcucPartitionRef
父容器 PwmGeneral
描述 将 PWM 驱动映射到零个或多个 ECUC 分区,以使驱动 API 在相应分区中可用。
多重性 0..*
类型 对 EcucPartition 的引用
Post-Build 变体多重性 true
Post-Build 变体值 true
多重性配置类 Pre-compile time:x;Link time:-;Post-build time:-
值配置类 Pre-compile time:x;Link time:-;Post-build time:-
作用域/依赖 scope: ECU
SWS 条目
参数名称 PwmKernelEcucPartitionRef
父容器 PwmGeneral
描述 将 PWM 内核映射到零个或一个 ECUC 分区,以将驱动内核分配到某个特定内核。所引用的 ECUC 分区是 PWM 驱动所映射到的 ECUC 分区的子集。
多重性 0..1
类型 对 EcucPartition 的引用
Post-Build 变体多重性 true
Post-Build 变体值 true
多重性配置类 Pre-compile time:x(All Variants);Link time:-;Post-build time:-
值配置类 Pre-compile time:x(All Variants);Link time:-;Post-build time:-
作用域/依赖 scope: ECU
容器名称 多重性
PwmPowerStateConfig 0..*

PwmKernelEcucPartitionRef 所引用的 ECUC 分区应是 PwmEcucPartitionRef 所引用的 ECUC 分区的子集。

若 PwmEcucPartitionRef 引用一个或多个 ECUC 分区,则 PwmKernelEcucPartitionRef 的多重性应为一,并且也应引用这些 ECUC 分区之一。

8.2.3. PwmPowerStateConfig

SWS 条目
容器名称 PwmPowerStateConfig
父容器 PwmGeneral
描述 此参数的每个实例定义一个电源状态,以及到达该电源状态时应调用的回调。
配置参数 见下方参数表
SWS 条目
参数名称 PwmPowerState
父容器 PwmPowerStateConfig
描述 此参数的每个实例描述 PWM 硬件所支持的一个不同电源状态。它应由硬件供应商定义,并由 PWM 驱动用于引用将 PWM 硬件模块置于所述电源状态的特定硬件配置。至少应始终配置对应于满功率状态的电源模式。
默认值 --
Post-Build 变体值 false
值配置类 Pre-compile time:x(All Variants);Link time:-;Post-build time:-
作用域/依赖 scope: local 依赖:仅当参数 PwmLowPowerStatesSupport 设为 true 时才应配置此参数。
SWS 条目
参数名称 PwmPowerStateReadyCbkRef
父容器 PwmPowerStateConfig
描述 此参数的每个实例包含对 CDD 或 IoHwAbs 组件中定义的电源模式回调的引用。
多重性 1
类型 EcucFunctionNameDef
默认值 --
正则表达式 --
Post-Build 变体值 false
值配置类 Pre-compile time:x(All Variants);Link time:-;Post-build time:-
作用域/依赖 scope: local 依赖:仅当参数 PwmLowPowerStatesSupport 设为 true 时才应配置此参数。

8.2.4. PwmChannel

SWS 条目
容器名称 PwmChannel
父容器 PwmChannelConfigSet
描述 单个 PWM 通道的配置。
配置参数 见下方参数表
SWS 条目
参数名称 PwmChannelClass
父容器 PwmChannel
描述 PWM 通道的类别。实现类型:Pwm_ChannelClassType。
多重性 0..1
类型 EcucEnumerationParamDef
范围 PWM_FIXED_PERIOD
Post-Build 变体多重性 true
Post-Build 变体值 true
多重性配置类 Pre-compile time:x(VARIANT-PRE-COMPILE);Link time:-;Post-build time:x(VARIANT-POST-BUILD)
值配置类 Pre-compile time:x(VARIANT-PRE-COMPILE);Link time:-;Post-build time:x(VARIANT-POST-BUILD)
作用域/依赖 scope: local
SWS 条目
参数名称 PwmChannelId
父容器 PwmChannel
描述 PWM 通道的通道 ID。该值将赋给由 PwmChannel 容器短名派生的符号名。
多重性 1
类型 EcucIntegerParamDef(为此参数生成符号名)
范围 0 .. 4294967295
默认值 --
Post-Build 变体值 false
值配置类 Pre-compile time:x(All Variants);Link time:-;Post-build time:-
SWS 条目
参数名称 PwmDutycycleDefault
父容器 PwmChannel
描述 初始化时使用的占空比值(0 表示 0%,0x8000 表示 100%)。
多重性 1
类型 EcucIntegerParamDef
范围 0 .. 32768
默认值 --
Post-Build 变体值 true
值配置类 Pre-compile time:x(VARIANT-PRE-COMPILE);Link time:-;Post-build time:x(VARIANT-POST-BUILD)
作用域/依赖 scope: local
SWS 条目
参数名称 PwmIdleState
父容器 PwmChannel
描述 参数 PWM_IDLE_STATE 表示信号停止后(例如调用 Pwm_SetOutputToIdle)PWM 的输出状态。
多重性 1
类型 EcucEnumerationParamDef
范围 PWM_HIGH;PWM_LOW
Post-Build 变体值 true
值配置类 Pre-compile time:x(VARIANT-PRE-COMPILE);Link time:-;Post-build time:x(VARIANT-POST-BUILD)
SWS 条目
参数名称 PwmNotification
父容器 PwmChannel
描述 回调函数的定义。
多重性 0..1
类型 EcucFunctionNameDef
默认值 "NULL"
正则表达式 --
Post-Build 变体多重性 true
Post-Build 变体值 true
多重性配置类 Pre-compile time:x(VARIANT-PRE-COMPILE);Link time:-;Post-build time:x(VARIANT-POST-BUILD)
值配置类 Pre-compile time:x(VARIANT-PRE-COMPILE);Link time:-;Post-build time:x(VARIANT-POST-BUILD)
作用域/依赖 scope: local
SWS 条目
参数名称 PwmPeriodDefault
父容器 PwmChannel
描述 初始化时使用的周期值(单位:秒)。
多重性 1
类型 EcucFloatParamDef
范围 [0 .. INF]
默认值 --
Post-Build 变体值 true
值配置类 Pre-compile time:x(VARIANT-PRE-COMPILE);Link time:-;Post-build time:x(VARIANT-POST-BUILD)
SWS 条目
参数名称 PwmPolarity
父容器 PwmChannel
描述 定义每个 PWM 通道的起始极性。
多重性 1
类型 EcucEnumerationParamDef
范围 PWM_HIGH
Post-Build 变体值 true
值配置类 Pre-compile time:x(VARIANT-PRE-COMPILE);Link time:-;Post-build time:x(VARIANT-POST-BUILD)
作用域/依赖 scope: local
SWS 条目
参数名称 PwmChannelEcucPartitionRef
父容器 PwmChannel
描述 将一个 PWM 通道映射到零个或多个 ECUC 分区,以限制对该通道的访问。所引用的 ECUC 分区是 PWM 驱动所映射到的 ECUC 分区的子集。
多重性 0..*
类型 对 EcucPartition 的引用
Post-Build 变体多重性 true
Post-Build 变体值 true
多重性配置类 Pre-compile time:x(All Variants);Link time:-;Post-build time:-
值配置类 Pre-compile time:x(All Variants);Link time:-;Post-build time:-
作用域/依赖 scope: ECU
SWS 条目
参数名称 PwmMcuClockReferencePoint
父容器 PwmChannel
描述 此参数包含对 McuClockReferencePoint 的引用。
多重性 1
类型 对 McuClockReferencePoint 的引用
Post-Build 变体值 true
值配置类 Pre-compile time:x(VARIANT-PRE-COMPILE);Link time:-;Post-build time:x(VARIANT-POST-BUILD)
作用域/依赖 scope: ECU

无包含的容器。

若 PwmEcucPartitionRef 引用一个或多个 ECUC 分区,则 PwmChannelEcucPartitionRef 的多重性应大于零,并且也应引用这些 ECUC 分区中的一个或多个。

8.2.5. PwmChannelConfigSet

SWS 条目
容器名称 PwmChannelConfigSet
父容器 Pwm
描述 此容器包含 AUTOSAR Pwm 模块的配置参数与子容器。
配置参数 见下方参数表
容器名称 多重性 作用域/依赖
PwmChannel 1..* 单个 PWM 通道的配置。

8.2.6. PwmConfigurationOfOptApiServices

SWS 条目
容器名称 PwmConfigurationOfOptApiServices
父容器 Pwm
描述 --
配置参数 见下方参数表
SWS 条目
参数名称 PwmDeInitApi
父容器 PwmConfigurationOfOptApiServices
描述 在代码中添加/移除 Pwm_DeInit() 服务。
多重性 1
类型 EcucBooleanParamDef
默认值 --
Post-Build 变体值 false
值配置类 Pre-compile time:x(All Variants);Link time:-;Post-build time:-
作用域/依赖 scope: local
SWS 条目
参数名称 PwmGetOutputState
父容器 PwmConfigurationOfOptApiServices
描述 --
多重性 1
类型 EcucBooleanParamDef
默认值 --
Post-Build 变体值 false
值配置类 Pre-compile time:x(All Variants);Link time:-;Post-build time:-
作用域/依赖 scope: local
SWS 条目
参数名称 PwmSetDutyCycle
父容器 PwmConfigurationOfOptApiServices
描述 --
多重性 1
类型 EcucBooleanParamDef
默认值 --
Post-Build 变体值 false
值配置类 Pre-compile time:x(All Variants);Link time:-;Post-build time:-
作用域/依赖 scope: local
SWS 条目
参数名称 PwmSetOutputToIdle
父容器 PwmConfigurationOfOptApiServices
描述 --
多重性 1
类型 EcucBooleanParamDef
默认值 --
Post-Build 变体值 false
值配置类 Pre-compile time:x(All Variants);Link time:-;Post-build time:-
作用域/依赖 scope: local
SWS 条目
参数名称 PwmSetPeriodAndDuty
父容器 PwmConfigurationOfOptApiServices
描述 --
多重性 1
类型 EcucBooleanParamDef
默认值 --
Post-Build 变体值 false
值配置类 Pre-compile time:x(All Variants);Link time:-;Post-build time:-
作用域/依赖 scope: local
SWS 条目
参数名称 PwmVersionInfoApi
父容器 PwmConfigurationOfOptApiServices
描述 指示是否支持 Pwm_GetVersionInfo 的开关。
多重性 1
类型 EcucBooleanParamDef
默认值 false
Post-Build 变体值 false
值配置类 Pre-compile time:x(All Variants);Link time:-;Post-build time:-
作用域/依赖 scope: local

8.3. 发布信息

详情请参阅 SWS_BSWGeneral 中的第 10.3 章 "Published Information"(发布信息)。

微信扫一扫,获取更多及时资讯

微信扫一扫