在STM32输入捕获测PWM占空比时,用从模式复位(Slave Mode Reset)可让计数器在每次捕获到上升沿时自动清零,无需在中断里手动写CNT=0。配置步骤:1) 选择捕获通道(如TIMx_CH1)为输入捕获模式,边沿设为上升沿,并开启该通道的捕获中断;2) 在TIMx_SMCR寄存器中,将TS位设为对应触发源(如TI1FP1),SMS位设为100(复位模式);3) 使能捕获中断,在中断中读取CCR1(周期值)和CCR2(高电平时间,需将CH2配置为下降沿捕获,且从模式触发源仍用TI1FP1);4) 占空比 = CCR2/CCR1。注意:从模式复位会在触发信号到来时自动将CNT清零,因此CCR1捕获的是完整周期,CCR2捕获的是高电平宽度。需确保两个通道的输入滤波和预分频一致,且触发源选择正确(TI1FP1对应CH1上升沿)。这样每次上升沿硬件自动复位计数器,省去软件清零,避免中断延迟带来的误差。