# 【STM32输入捕获实战】HAL_TIM_IC_CaptureCallback函数详解与典型应用
## 摘要
`HAL_TIM_IC_CaptureCallback`是STM32 HAL库中处理输入捕获中断的核心回调函数。本文将深入剖析其工作原理,结合电机测速、频率测量等实际案例,系统讲解输入捕获功能的实现方法与优化技巧。
## 一、输入捕获原理与核心机制
### 1. 硬件基础
- **捕获通道**:TIMx_CH1~CH4对应不同的GPIO引脚(如TIM2_CH1对应PA0)
- **捕获寄存器**:CCR1~CCR4存储捕获时刻的计数器值
- **边沿检测**:支持上升沿、下降沿或双边沿捕获
### 2. 软件流程
```mermaid
graph TD
A[定时器初始化] --> B[配置输入捕获参数]
B --> C[使能捕获中断]
C --> D{信号边沿触发}
D --> E[更新CCR寄存器]
E --> F[触发HAL_TIM_IC_CaptureCallback]
```
## 二、关键函数与参数解析
### 1. 初始化配置
```c
TIM_IC_InitTypeDef sConfigIC;
sConfigIC.ICPolarity = TIM_INPUTCHANNELPOLARITY_RISING;