stm32_bug小记(一)
在应用stm32捕获方波时有更换捕获极性的需求。
一开始我选用的语句是:
// 上升沿捕获
TIM2_ICInitStructure.TIM_ICPolarity = TIM_ICPolarity_Rising; //上升沿捕获
实验中测试并未得到想要的效果,怀疑是中断时间过长。当把这句话写到主函数中出现报错,才明白问题。
上面的语句是对结构体成员变量的赋值而非对捕获极性相关寄存器的操作。应该改用:
// 上升沿捕获
TIM_OC1PolarityConfig(TIM2,TIM_ICPolarity_Rising); //CC1P=0 设置为上升沿捕获