本规约规约 AUTOSAR 基础软件模块 PWM 驱动(Pulse Width Modulation Driver)的功能、API 与配置。PWM 驱动位于微控制器抽象层(MCAL),控制 PWM 信号的占空比、周期与极性。
| 缩略语 | 描述 |
|---|---|
| PWM | Pulse Width Modulation(脉宽调制) |
| MCAL | Microcontroller Abstraction Layer(微控制器抽象层) |
| Duty Cycle | 占空比(0-100%) |
| Period | 周期 |
| Polarity | 极性(高/低有效) |
| Idle State | 空闲状态 |
| Fixed / Variable Period | 固定 / 可变周期 |
AUTOSAR_EXP_LayeredSoftwareArchitecture — 分层软件架构AUTOSAR_SRS_BSWGeneral — 基础软件通用需求AUTOSAR_SRS_PWMDriver — PWM 驱动需求PWM 驱动为基于硬件的 MCAL 驱动。固定/可变周期模式、电源状态管理依赖硬件支持。
PWM 驱动依赖 Port(引脚配置)、DET、OS(多核分区)、EcuM(电源状态管理)。
PWM 驱动满足 SRS_Pwm_NNNNN 中的 15+ 条需求。SWS_Pwm_NNNNN 规范项 ID 约 200+ 条(编号范围 00001-91001)。
PWM 驱动允许以下预配置:
PWM 驱动提供:
Pwm_SetDutyCycle);Pwm_SetPeriodAndDuty,仅可变周期模式);Pwm_SetOutputToIdle);Pwm_GetOutputState);| 错误码 | 含义 |
|---|---|
PWM_E_UNINIT | PWM 未初始化 |
PWM_E_ALREADY_INITIALIZED | 已初始化 |
PWM_E_PARAM_CHANNEL | 无效的通道 |
PWM_E_PARAM_VALUE | 无效的参数值 |
PWM_E_PERIOD_UNCHANGEABLE | 固定周期模式不允许修改周期 |
PWM_E_POWER_STATE_NOT_SUPPORTED | 电源状态不支持 |
无。
无。
无。
无。
Std_ReturnType、Std_VersionInfoType| 类型 | 描述 |
|---|---|
Pwm_ConfigType | PWM 抽象配置类型 |
Pwm_ChannelType | 通道 ID(uint8/16) |
Pwm_DutyCycleType | 占空比值(uint16,0x0000=0% / 0x8000=100%) |
Pwm_PeriodType | 周期值(取决于硬件计时单位) |
Pwm_OutputStateType | 输出状态枚举(PWM_HIGH / PWM_LOW) |
Pwm_PowerStateType | 电源状态枚举(FULL / LOW) |
| API | 功能 |
|---|---|
Pwm_Init | 初始化 PWM |
Pwm_DeInit | 反初始化 PWM |
Pwm_SetDutyCycle(draft/obsolete) | 设置占空比 |
Pwm_SetPeriodAndDuty(draft/obsolete) | 设置周期与占空比 |
Pwm_SetOutputToIdle(draft/obsolete) | 设置输出到空闲 |
Pwm_GetOutputState | 获取输出状态 |
Pwm_DisableNotification(draft/obsolete) | 禁用通知 |
Pwm_EnableNotification(draft/obsolete) | 启用通知 |
Pwm_SetPowerState | 设置电源状态 |
Pwm_GetCurrentPowerState | 获取当前电源状态 |
Pwm_GetTargetPowerState | 获取目标电源状态 |
Pwm_PreparePowerState | 准备电源状态转换 |
Pwm_GetVersionInfo | 获取版本信息 |
Pwm_Main_PowerTransitionManager | 电源状态转换管理器(调度函数) |
Pwm_Notification_<#Channel> | 通知回调(应用实现) |
共 14 个 API 函数 + 1 个通知回调模板 + 1 个电源状态转换管理器。
Pwm_SetDutyCycle(Channel, Duty) → PWM 输出新占空比;Pwm_SetPeriodAndDuty(Channel, Period, Duty)(仅可变周期模式);Pwm_SetOutputToIdle(Channel) → PWM 输出空闲电平;Pwm_Notification_<#Channel>();Pwm_PreparePowerState() → Pwm_Main_PowerTransitionManager() → Pwm_SetPowerState()。| 容器 | 描述 |
|---|---|
| Pwm | 根容器(开发错误检测、版本 API、固定/可变周期模式、电源状态支持) |
| PwmGeneral | 通用配置(通道数、周期类型、电源状态支持) |
| PwmChannel | 通道(周期、占空比、极性、空闲状态、通知回调、类/索引) |
| PwmPowerStateConfig | 电源状态配置 |
| PwmPublishedInformation | 发布信息 |
共 5 个 ECUC 容器,含 20+ 配置参数。
发布信息包括 PWM 模块版本、配置变体、通道数、周期类型等。
校对轮次:L1 自动校对(2026-06-13)
PWM_E_UNINIT/ALREADY_INITIALIZED/PARAM_CHANNEL/PARAM_VALUE/PERIOD_UNCHANGEABLE/POWER_STATE_NOT_SUPPORTED)完整翻译。