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
© 2014 bubuko.com 版权所有 - 联系我们:wmxa8@hotmail.com
打开技术之扣,分享程序人生!