AUTOSAR MCAL 配置说明 · 模块⑤ Icu
原始 Flomo:https://v.flomoapp.com/mine/?memo_id=MjU1NzY0MTU2
AUTOSAR MCAL 配置说明 · 模块⑤ Icu
Icu(输入捕获)驱动,用来测量外部信号的边沿、周期、脉宽——比如测转速/轮速传感器信号、外设方波频率与占空比,提供测量完成的回调通知。
核心职责:边沿检测、信号周期/脉宽测量、时间戳、通知回调。
关键配置项:
- IcuChannelConfiguration:通道配置(映射到定时器输入捕获通道 / 引脚)。
- IcuMeasurementMode:测量模式(信号测量:周期 / 脉宽 / 两个边沿之间时间;边沿检测)。
- IcuSignalMeasurement:信号测量(测高/低电平时间、边沿间时间)。
- IcuEdgeDetection:边沿检测(上升沿 / 下降沿 / 任意边沿)。
- IcuInputPolarity / ActivationState:激活电平 / 极性。
- IcuNotification:测量完成中断回调(通知函数)。
- IcuTimestamp:时间戳。
- IcuWakeupCapability:唤醒能力(可选)。
常用 API:Icu_StartTimestamp / Icu_StopTimestamp、Icu_GetTimestamp、Icu_EnableNotification / DisableNotification、Icu_StartSignalMeasurement / StopSignalMeasurement、Icu_GetMeasurementValue、Icu_SetActivationCondition。
配置思路:
- 确定要测什么:信号周期、脉宽、两沿时间,还是简单边沿检测(计数 / 唤醒)。
- 选测量模式 + 极性(上升 / 下降沿)。
- 配通知回调(测量完成触发)。
- 运行时用 Icu_StartXYZ + 读结果或用回调。
常见坑:
- 测量模式与通道能力不匹配 → 测不出正确值。
- 极性配反 → 测到的是反边沿。
- 通知回调没配 / 没开 → 测量完成没响应。
- 时钟 / 定时器源没配好 → 时间戳不准。
- 唤醒能力配置不当 → 无法唤醒 CPU。
📎 上一个(Adc):https://v.flomoapp.com/mine/?memo_id=MjU1NzIxMDU1
📎 总览:https://v.flomoapp.com/mine/?memo_id=MjU1NzIwNjEy
📎 专题入口:https://v.flomoapp.com/mine/?memo_id=MjU1NzIwMTcx