本规约规约 AUTOSAR 基础软件模块 PORT 驱动(Port Driver)的功能、API 与配置。PORT 驱动位于微控制器抽象层(MCAL),初始化并配置整个微控制器端口/引脚的功能与方向。
| 缩略语 | 描述 |
|---|---|
| PORT | Port(端口) |
| MCAL | Microcontroller Abstraction Layer(微控制器抽象层) |
| SFR | Special Function Register(特殊功能寄存器) |
| Pin Direction | 引脚方向(输入/输出) |
| Pin Mode | 引脚模式(普通 GPIO / 备用功能 / 模拟) |
| Alternate Function | 备用功能(如 UART/SPI/ADC 等) |
AUTOSAR_EXP_LayeredSoftwareArchitecture — 分层软件架构AUTOSAR_SRS_BSWGeneral — 基础软件通用需求AUTOSAR_SRS_PortDriver — PORT 驱动需求AUTOSAR_SRS_DIODriver — DIO 驱动需求PORT 驱动在系统启动时初始化所有引脚配置。运行时修改引脚方向/模式的能力受配置控制(部分引脚可能配置为只读)。
PORT 驱动依赖 DIO(引脚读写)、DET(开发错误追踪)、OS(多核分区)、EcuM(资源管理)。
PORT 驱动满足 SRS_Port_NNNNN 中的 8 条需求。SWS_Port_NNNNN 规范项 ID 约 100+ 条(编号范围 00001-91001)。
PORT 驱动允许以下预配置:
PORT 驱动初始化时配置所有引脚;运行时不修改引脚(除非显式调用 API)。
| 错误码 | 含义 |
|---|---|
PORT_E_UNINIT | PORT 未初始化 |
PORT_E_ALREADY_INITIALIZED | 已初始化 |
PORT_E_PARAM_PIN | 无效的引脚 |
PORT_E_PARAM_DIRECTION | 无效的方向 |
PORT_E_PARAM_INVALID_MODE | 无效的模式 |
PORT_E_DIRECTION_UNCHANGEABLE | 引脚方向不可修改 |
PORT_E_MODE_UNCHANGEABLE | 引脚模式不可修改 |
无。
无。
无。
无。
Std_ReturnType、Std_VersionInfoType| 类型 | 描述 |
|---|---|
Port_ConfigType | PORT 抽象配置类型 |
Port_PinType | 引脚 ID(uint8/16/32) |
Port_PinDirectionType | 方向枚举(PORT_PIN_IN / PORT_PIN_OUT / PORT_PIN_HI_Z) |
Port_PinModeType | 模式枚举(普通 GPIO / 各种备用功能 / 模拟) |
Port_PinLevelType | 引脚电平(PORT_PIN_LEVEL_LOW/HIGH) |
| API | 签名 | 功能 |
|---|---|---|
Port_Init | void Port_Init(const Port_ConfigType* ConfigPtr) | 初始化 PORT(配置所有引脚) |
Port_SetPinDirection | void Port_SetPinDirection(Port_PinType Pin, Port_PinDirectionType Direction) | 设置引脚方向 |
Port_RefreshPortDirection | void Port_RefreshPortDirection(void) | 刷新所有引脚方向为配置值 |
Port_GetVersionInfo | void Port_GetVersionInfo(Std_VersionInfoType* VersionInfoPtr) | 获取版本信息 |
Port_SetPinMode | void Port_SetPinMode(Port_PinType Pin, Port_PinModeType Mode) | 设置引脚模式 |
共 5 个 API 函数。
Port_Init(ConfigPtr) → 配置所有引脚 SFR;Port_SetPinDirection(Pin, Direction) → 检查引脚是否可修改 → 修改 SFR;Port_RefreshPortDirection() → 恢复所有引脚方向为配置值;Port_SetPinMode(Pin, Mode) → 修改 SFR。| 容器 | 描述 |
|---|---|
| Port | 根容器(开发错误检测、版本 API、方向修改支持、模式修改支持、多核支持) |
| PortGeneral | 通用配置(引脚数) |
| PortContainer | 引脚容器(每引脚方向、模式、初始电平、可修改标志) |
| PortPin | 引脚定义 |
| PortPublishedInformation | 发布信息 |
共 5 个 ECUC 容器,含 15+ 配置参数。
发布信息包括 PORT 模块版本、配置变体、引脚数等。
校对轮次:L1 自动校对(2026-06-13)
PORT_E_UNINIT/ALREADY_INITIALIZED/PARAM_PIN/PARAM_DIRECTION/PARAM_INVALID_MODE/DIRECTION_UNCHANGEABLE/MODE_UNCHANGEABLE)完整翻译。