一、 概述
本文将会介绍 SemiDrive E3 MCAL Icu 模块的简介以及基本配置,其中还会涉及到 Xtrg 模块的配置。此外会结合实际操作的介绍,帮助新手快速了解并掌握这个模块的使用,文中的 MCAL 是基于 PTG3.0 的版本,开发板是官方的 E3640 网关板。
二、 Icu 模块简介
E3 Icu 模块底层硬件为 Etimer 中的 Capture 通道,每个 Capture 通道都可以作为一个 Icu 通道,E3 系列最多有 4 个 Etimer,因此最多有 16 个 Icu 通道,其中 E3206/E3106/E3205/E3104 系列最多有 2 个 Etiemr,最多有 8 个 Icu 通道。Icu 模块支持以下四种时钟源的选择:
- HF_CLK 时钟源,可以在 Mcu_ClkCfg 中找到对应频率。
- AHF_CLK 时钟源,和 Xtrg 使用的时钟源一致。
- EXT_CLK 时钟源,外部时钟源输入。
- LP_CLK 时钟源,固定为 24 MHz。
Icu 模块支持对以下几种模式进行输入捕获:
- 信号边沿变化检测
- 信号测量(高电平时间、低电平时间、周期时间、周期占空比)
- 边沿变化时间戳采集
- 边沿的计数
三、 Icu 模块的主要配置
配置 Icu 模块首先需要使能 Etimer 模块,在 Mcu 模块中进行配置,如下图所示。