边界跳变通常不是捕获外设本身的问题,而是“捕获预分频+溢出计数”的软件拼接时序不严谨。STM32输入捕获在边沿到来时把CCR快照进寄存器,若你设置了ICxPSC>0,则只有第N个有效边沿才触发CCxE,中间边沿被硬件丢弃;此时若用溢出中断累计高电平期间的溢出次数,而溢出标志与捕获标志在同一时刻置位,读CCR和清溢出计数之间可能被中断打断,导致高电平宽度多算或少算一个溢出周期。排查建议:1) 测占空比时把ICxPSC设为0,保证每个边沿都捕获;2) 在捕获中断里先读CCR再读SR,用“捕获值+溢出计数×ARR”统一拼接,且溢出计数只在捕获中断内清零;3) 若必须分频,确认分频后的边沿与溢出中断优先级关系,避免在溢出ISR里修改捕获相关计数;4) 边界处用DMA或从模式复位减少软件参与。