STM32编码器TIM_EncoderInterfaceConfig函数参数
时间:2019-09-26 10:43:24
收藏:0
阅读:1898
我是一个刚学STM32小灰,最近在制作平衡车,在编写编码器相关程序的时候碰到了一个问题:TIM_EncoderInterfaceConfig(TIM_TypeDef* TIMx, uint16_t TIM_EncoderMode, uint16_t TIM_IC1Polarity, uint16_t TIM_IC2Polarity)的参数问题
TIM_TypeDef* TIMx:选择定时器
uint16_t TIM_EncoderMode(TIM_EncoderMode_TI1,TIM_EncoderMode_TI2,TIM_EncoderMode_TI12):选择单边计数还是双边计数
uint16_t TIM_IC1Polarity(TIM_ICPolarity_Rising,TIM_ICPolarity_Falling,TIM_ICPolarity_BothEdge)
uint16_t TIM_IC2Polarity(同上)
问题就是出在TIM_EncoderInterfaceConfig函数的二三参数上。
stm32可以选择编码器四倍频,当时自己就很困惑TIM_EncoderMode_TI12、TIM_ICPolarity_BothEdge
然后做了一个实验关于各种参数的配置:
配置:tim3作为编码器计数(TIM_Period = 0xFFFF、TIM_Prescaler = 0x0),tim4作为定时器(TIM_Period = 7199、TIM_Prescaler = 9999)
过程:tim4进中断通过串口将tim的计数值发送到电脑
数据如下:
原文:https://www.cnblogs.com/IdelManBlogs/p/11589000.html
评论(0)