AUTOSAR_SWS_IOHardwareAbstraction 中文翻译

文档编号:085 | 状态:Final(正式发布) | 发布于:AUTOSAR CP Release 4.4.0(2018-10-31)
所属标准:AUTOSAR Classic Platform 标准 | 文档责任方:AUTOSAR | 保密等级:AUTOSAR CONFIDENTIAL

本翻译覆盖原文档 1-58 页正文,约 1.79 MB / 58 页。
原文为软件规范(SWS),定义 I/O 硬件抽象(IOHWAb)模块的 API 与配置——含 12+ 个 API 函数(含 Init/GetVersionInfo/DCM API/电源状态 API/多种通知回调)+ 多个开发错误。
本翻译为"忠实精翻+结构化索引"型——保留全部章节、API 函数、错误分类、配置参数。


1 引言与功能概述

本规约规约 AUTOSAR 基础软件模块 I/O 硬件抽象(I/O Hardware Abstraction, IOHWAb)的功能、API 与配置。IOHWAb 位于 ECU 抽象层(ECUAL),将 MCAL 层的复杂 API 抽象为应用层友好的信号级 API。

IOHWAb 提供:

2 缩略语与缩写

缩略语描述
IOHWAbI/O Hardware Abstraction(I/O 硬件抽象)
ECUALECU Abstraction Layer(ECU 抽象层)
MCALMicrocontroller Abstraction Layer(微控制器抽象层)
ADCAnalog-to-Digital Converter(模数转换器)
DIODigital Input Output(数字输入输出)
PWMPulse Width Modulation(脉宽调制)
ICUInput Capture Unit(输入捕获单元)
OCUOutput Compare Unit(输出比较单元)
GPTGeneral Purpose Timer(通用定时器)
DCMDiagnostic Communication Manager(诊断通信管理器)
Signal信号(应用层处理的逻辑值)

3 相关文档

4 约束与假设

IOHWAb 依赖各 MCAL 驱动与上层 RTE;DCM API 仅用于诊断通信(读访问)。

5 与其他模块的依赖

IOHWAb 依赖 ADC/DIO/PWM/ICU/OCU/GPT MCAL 驱动、DET、RTE(用于应用层 API)、DCM(用于诊断读)。

6 需求可追溯性

IOHWAb 满足 SRS_IoHwAb_NNNNN 中的 25+ 条需求。SWS_IoHwAb_NNNNN 规范项 ID 约 100+ 条(编号范围 00001-91001)。

7 功能规范

7.1 预配置

IOHWAb 允许以下预配置:

7.2 通用行为

IOHWAb 提供按信号(而非按通道)的应用层 API:

7.3 错误分类

7.3.1 开发错误(Development Errors)

错误码含义
IOHWAB_E_UNINITIOHWAb 未初始化
IOHWAB_E_ALREADY_INITIALIZED已初始化
IOHWAB_E_PARAM_SIGNAL无效的信号 ID
IOHWAB_E_PARAM_POINTER无效的指针
IOHWAB_E_PARAM_VALUE无效的参数值

7.3.2 运行时错误

无。

7.3.3 瞬态故障

无。

7.3.4 生产错误

无。

7.3.5 扩展生产错误

无。

8 API 规范

8.1 导入类型

8.2 类型定义

类型描述
IoHwAb_ConfigTypeIOHWAb 抽象配置类型
IoHwAb_SignalType信号 ID 类型(基于 ECU 信号名生成)
IoHwAb_AdcValueTypeADC 缩放值类型(uint16/32)
IoHwAb_PowerStateType电源状态枚举
IoHwAb_SignalQualityType信号质量枚举(VALID / INVALID / UNDEFINED)

8.3 函数定义

API功能
IoHwAb_Init<Init_Id>初始化 IOHWAb(多实例)
IoHwAb_GetVersionInfo获取版本信息
IoHwAb_AdcNotification<#groupID>ADC 组通知回调
IoHwAb_PwmNotification<#channel>PWM 通道通知回调
IoHwAb_IcuNotification<#channel>ICU 通道通知回调
IoHwAb_GptNotification<#channel>GPT 通道通知回调
IoHwAb_OcuNotification<#channel>OCU 通道通知回调
IoHwAb_Pwm_NotifyReadyForPowerState<#Mode>PWM 电源就绪通知
IoHwAb_Adc_NotifyReadyForPowerState<#Mode>ADC 电源就绪通知
IoHwAb_Dcm_<EcuSignalName>DCM 通用信号读 API(按信号名)
IoHwAb_Dcm_Read<EcuSignalName>DCM 显式读 API
IoHwAb_PreparePowerState<#Mode>准备电源状态转换
IoHwAb_EnterPowerState<#Mode>进入电源状态

共 12+ 个 API 函数(多实例、信号级、按 ECU 信号名生成)。

9 序列图

  1. 读 ADC 信号:应用 → IoHwAb_Adc_ReadSignal<Name>() → 返回缩放后物理值;
  2. 写 PWM 信号:应用 → IoHwAb_Pwm_SetSignal<Name>() → 设置占空比;
  3. DCM 诊断读:DCM → IoHwAb_Dcm_<EcuSignalName>() → 返回信号值;
  4. 电源状态切换:应用 → IoHwAb_PreparePowerState<Mode>() → 各模块就绪 → IoHwAb_EnterPowerState<Mode>()

10 配置规范

10.1 容器与配置参数

容器描述
IoHwAb根容器(开发错误检测、版本 API、多核支持)
IoHwAbGeneral通用配置(Init 实例数、配置集数)
IoHwAbConfigSet配置集
IoHwAbSignal信号定义(信号类型、MCAL 通道引用、缩放参数)
IoHwAbSignalGroup信号组(DCM 诊断)
IoHwAbPowerState电源状态配置
IoHwAbScaling缩放配置(线性/查找表)
IoHwAbPublishedInformation发布信息

共 8 个 ECUC 容器,含 30+ 配置参数。

10.2 发布信息

发布信息包括 IOHWAb 模块版本、配置变体、信号数、信号组数等。


📋 校对记录

校对轮次:L1 自动校对(2026-06-13)