定时器从0开始计数,计数到TIM_Period后,重新归零再计数。
捕获只是把发生捕获时刻的计数器当前值拷贝下来,你的IC2Value就是这个数值。
如果配置了 发生捕获时复位计数器,则计数器没有计数到TIM_Period时也被归零并重新计数。
如果你配置比较小的TIM_Period数值,则可能在还没有发生捕获时,计数器就被归零,所以你要在软件中记录下计数器被归零的次数。
当计数器的时钟频率为F时,计数器每计数一次表示1/F的时间,因此从捕获寄存器中读出的数值表示了一个时间。如果配置了发生捕获时复位计数器,则这个时间恰好就是要捕获信号的周期。
从上面原理可以看出,TIM_Period的数值与捕获的精度没有关系。
捕获只是把发生捕获时刻的计数器当前值拷贝下来,你的IC2Value就是这个数值。
如果配置了 发生捕获时复位计数器,则计数器没有计数到TIM_Period时也被归零并重新计数。
如果你配置比较小的TIM_Period数值,则可能在还没有发生捕获时,计数器就被归零,所以你要在软件中记录下计数器被归零的次数。
当计数器的时钟频率为F时,计数器每计数一次表示1/F的时间,因此从捕获寄存器中读出的数值表示了一个时间。如果配置了发生捕获时复位计数器,则这个时间恰好就是要捕获信号的周期。
从上面原理可以看出,TIM_Period的数值与捕获的精度没有关系。