Stm32的通用定时器设置编码器模式计数原理
时间:10-02
整理:3721RD
点击:
http://www.eeworm.com/read/16728/685076
参考上面网址中的程序,大部分都懂了,只是有一个地方一直卡着
上面的代码中有一个ENC_Get_Mechanical_Angle()函数, (获得机械角度)(第 183 行开始)
temp = (s32)(TIM_GetCounter(ENCODER_TIMER)) * (s32)(U32_MAX / (4*ENCODER_PPR)) ;
temp的计算公式是怎么来的?为什么要这样求?听一位网友说是转换成32位有符号数,还是不懂什么意思。
另外后面一句的返回值也是
(s16)(temp/65536)
这个值又是什么意思?
刚开始学,各位帮看看~
参考上面网址中的程序,大部分都懂了,只是有一个地方一直卡着
上面的代码中有一个ENC_Get_Mechanical_Angle()函数, (获得机械角度)(第 183 行开始)
temp = (s32)(TIM_GetCounter(ENCODER_TIMER)) * (s32)(U32_MAX / (4*ENCODER_PPR)) ;
temp的计算公式是怎么来的?为什么要这样求?听一位网友说是转换成32位有符号数,还是不懂什么意思。
另外后面一句的返回值也是
(s16)(temp/65536)
这个值又是什么意思?
刚开始学,各位帮看看~
已退回5积分