本文档规定对 ICU 驱动模块的需求。ICU 驱动是微控制器抽象层(MCAL)的一部分,控制输入捕获单元的多种信号测量(边沿计数、边沿时间戳、信号测量)。
| 缩略语 | 描述 |
|---|---|
| ICU | Input Capture Unit(输入捕获单元) |
| DIO | Digital Input Output(数字输入输出) |
| PWM | Pulse Width Modulation(脉宽调制) |
| GPT | General Purpose Timer(通用定时器) |
| MCAL | Microcontroller Abstraction Layer(微控制器抽象层) |
| MCU | Microcontroller Unit(微控制器单元) |
| Signal Measurement | 信号测量(高电平时间/低电平时间/周期/占空比) |
| Timestamp | 时间戳(捕获事件发生的时刻) |
| Edge Count | 边沿计数(上升/下降/任意) |
ICU 驱动(Input Capture Unit Driver)初始化并控制微控制器的输入捕获单元。ICU 驱动提供三种主要功能:
| RS_BRF 需求 | 描述 | 由 SRS_Icu 满足 |
|---|---|---|
| RS_BRF_01056 | AUTOSAR BSW 模块应提供标准化接口 | Icu_12200, ..., Icu_12220 |
| RS_BRF_01064 | AUTOSAR BSW 应提供回调函数以访问上层模块 | Icu_12220, Icu_12221 |
| RS_BRF_01104 | AUTOSAR 应支持 ECU 与总线的睡眠与唤醒 | Icu_12215, Icu_12216, Icu_12217 |
| RS_BRF_01200 | AUTOSAR 应对多核系统提供支持 | Icu_12225 |
| RS_BRF_01904 | AUTOSAR 微控制器抽象应提供对硬件定时器的访问 | 全部 25+ 需求 |
| ID | 标题 | 描述 |
|---|---|---|
| SRS_Icu_12200 | 应允许静态配置通道数 | 应(shall)允许静态配置 ICU 通道数与每个通道的属性 |
| SRS_Icu_12201 | 应允许静态配置激活条件 | 应(shall)允许配置每通道的激活边沿(上升/下降/任意) |
| SRS_Icu_12202 | 应允许静态配置测量属性 | 应(shall)允许配置信号测量模式(高/低/周期/占空比) |
| SRS_Icu_12203 | 应允许静态配置唤醒能力 | 应(shall)允许每通道配置为唤醒源 |
| SRS_Icu_12204 | 应允许静态配置时间戳缓冲区 | 应(shall)允许每通道配置时间戳缓冲区大小 |
| ID | 标题 | 描述 |
|---|---|---|
| SRS_Icu_12205 | 应提供初始化服务 | 应(shall)提供 Icu_Init() 初始化服务 |
| ID | 标题 | 描述 |
|---|---|---|
| SRS_Icu_12206 | 应提供反初始化服务 | 应(shall)提供 Icu_DeInit() 服务 |
| SRS_Icu_12207 | 应提供设置模式服务 | 应(shall)提供 Icu_SetMode() 服务(Normal/Sleep) |
| SRS_Icu_12208 | 应提供禁用唤醒服务 | 应(shall)提供 Icu_DisableWakeup() 服务 |
| SRS_Icu_12209 | 应提供启用唤醒服务 | 应(shall)提供 Icu_EnableWakeup() 服务 |
| SRS_Icu_12210 | 应提供检查唤醒服务 | 应(shall)提供 Icu_CheckWakeup() 服务 |
| SRS_Icu_12211 | 应提供设置激活条件服务 | 应(shall)提供 Icu_SetActivationCondition() 服务 |
| SRS_Icu_12212 | 应提供禁用通知服务 | 应(shall)提供 Icu_DisableNotification() 服务 |
| SRS_Icu_12213 | 应提供启用通知服务 | 应(shall)提供 Icu_EnableNotification() 服务 |
| SRS_Icu_12214 | 应提供获取输入状态服务 | 应(shall)提供 Icu_GetInputState() 服务 |
| SRS_Icu_12215 | 应提供启动时间戳服务 | 应(shall)提供 Icu_StartTimestamp() 服务 |
| SRS_Icu_12216 | 应提供停止时间戳服务 | 应(shall)提供 Icu_StopTimestamp() 服务 |
| SRS_Icu_12217 | 应提供获取时间戳索引服务 | 应(shall)提供 Icu_GetTimestampIndex() 服务 |
| SRS_Icu_12218 | 应提供重置边沿计数服务 | 应(shall)提供 Icu_ResetEdgeCount() 服务 |
| SRS_Icu_12219 | 应提供启用边沿计数服务 | 应(shall)提供 Icu_EnableEdgeCount() 服务 |
| SRS_Icu_12220 | 应提供启用边沿检测服务 | 应(shall)提供 Icu_EnableEdgeDetection() 服务 |
| SRS_Icu_12221 | 应提供禁用边沿检测服务 | 应(shall)提供 Icu_DisableEdgeDetection() 服务 |
| SRS_Icu_12222 | 应提供禁用边沿计数服务 | 应(shall)提供 Icu_DisableEdgeCount() 服务 |
| SRS_Icu_12223 | 应提供获取边沿数服务 | 应(shall)提供 Icu_GetEdgeNumbers() 服务 |
| SRS_Icu_12224 | 应提供启动信号测量服务 | 应(shall)提供 Icu_StartSignalMeasurement() 服务 |
AUTOSAR_EXP_LayeredSoftwareArchitecture — 分层软件架构AUTOSAR_SRS_BSWGeneral — 基础软件通用需求AUTOSAR_SRS_SPALGeneral — SPAL 通用需求校对轮次:L1 自动校对(2026-06-13)