STM32小白笔记-TIM编码器

TIM编码器接口

  1. Encoder Interface 编码器接口
  2. 编码器接口可接收增量(正交)编码器的信号,根据编码器旋转产生的正交信号脉冲,自动控制CNT自增或自减,从而指示编码器的位置、旋转方向和旋转速度
  3. 每个高级定时器和通用定时器都拥有1个编码器接口
  4. 两个输入引脚借用了输入捕获的通道1和通道2

正交编码器

定时器编码器部分

 

编码器有两个输入端TI1FP1TI2FP2,分别要接到编码器的A相和B相。可以看出编码器功能借用了输入捕获通道的前两个通道CH1CH2

在输出端,相当于从模式控制器,来控制CNT的计数时钟和计数方向,具体计数规则可以依照正交编码器正反转判断规则,如果正转则CNT自增,如果反转则CNT自减。而在其他模式下时基单元使用的72MHz时钟频率,以及我们在时基单元初始化设置的计数方向在编码器模式下不生效,因为此时计数时钟和计数方向都由编码器托管,计数器的自增和自减,受编码器控制。

编码器接口基本结构

输入捕获的前两个通道(CH1CH2)通过GPIO口接入编码器的AB相,然后通过滤波器和边沿检测极性选择,产生TI1FP1TI2FP2,通向编码器接口,编码器接口通过预分频器控制CNT计数器和时钟,同时,编码器接口还根据编码器旋转方向,控制CNT的计数方向(编码器正转,CNT自增;反之自减)

这里ARR我们一般设置为65535,即最大量程,利用补码,可以很容易得到负数。

编码器工作模式

实例(均不反相)

编码器抗噪声原理:

在毛刺部分,一个引脚信号不变,另一个引脚信号连续跳变多次,由表中计数逻辑计数器就会连续加减加减,保持计数值不变,抵抗毛刺的干扰。

实例(TI1反相)

在输入捕获模式下,TI1TI2经过边沿检测极性选择时会选择上升沿有限还是下降沿有效,然而对于编码器接口,上升沿和下降沿均能触发其计数。所以在编码器模式下,边沿检测极性选择就不是对边沿的极性选择了,而是对高低电平的极性选择。如果我们选择上升沿的参数,则代表信号直通过来,高低电平极性不反转;如果我们选择下降沿的参数,则代表信号会通过一个非门过来,高低电平极性要进行反转。简而言之,就是TI1TI2信号是否通过一个非门。

于是下图里TI1信号的上升沿实际上为下降沿,再根据计数逻辑判断CNT自增或自减。

 

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值