旋转编码器与STM32的编码器接口学习

一、旋转编码器

  编码器就是将角位移或者直线位移转换成电信号再转换成计数脉冲的仪器,编码器类型主要有增量型编码器和绝对型编码器。

  增量型旋转编码器原理简析

  1、编码器转动方向的判定

   A、B两个点放置两个光敏接收管,间距为S2,旋转角度盘有间距S1的S光源区和间距为S0的非光源区,当角度盘转动时,光源区经过AB两点时使得AB通道分别输出高电平,非光源区经过时则输出低电平,因此AB输出信号有四种情况(11、10、01、00),每一种信号转换间隔为S2,因此通过比较AB两通道的信号值与下一个信号值作比较即可获得角度盘转动的方向 —— 正转时A在前B在后,反转时B在前A在后。

  2、编码器转动周期和速度计算

   增量编码器除去AB两个通道信号,还有一个Z信号,角度盘每转一周输出一个Z信号脉冲,作为编码器的零位脉冲定位,也可通过Z信号计算得出编码器的转速与周期

 

二、STM32定时器编码接口模式

旋转编码器与STM32的编码器接口学习_第1张图片

旋转编码器与STM32的编码器接口学习_第2张图片

三、STMF4定时器编码接口模式配置

1、配置A、B的输入IO口为浮空输入

2、配置定时器单元(TIM_Period、TIM_Prescaler、ClockDivision、Counter Mode)

3、配置对应寄存器为编码器接口模式以及配置相关的输入捕获设置

     TIM_EncoderInterfaceConfig

你可能感兴趣的:(单片机)