K60笔记-读取编码器数值(正交解码)

本程序使用山外库:http://git.oschina.net/chenxuuu/vcan-K60-V5.3

正交解码获取

先初始化:

    ftm_quad_init(FTM1);                                    //FTM1 正交解码初始化

获取编码器值:

int16 val;
val = ftm_quad_get(FTM1);          //获取FTM1 正交解码 的脉冲数(负数表示反方向)

清空计数器:

ftm_quad_clean(FTM1);

可以将获取函数封装成如下样式:

/*!
 *  @brief      编码器数值获取函数
 *  @since      v1.1
 *  @note       输入值范围1,2   整型
 *  Sample usage:            encoder=encoder_get(1);    //获取编码器数值,赋给encoder
 */
int16 encoder_get(int encoderselect)
{
    int16 val;
    if(encoderselect==1)
    {
        val = ftm_quad_get(FTM1);          //获取FTM1 正交解码 的脉冲数(负数表示反方向)
        ftm_quad_clean(FTM1);
    }
    else if(encoderselect==2)
    {
        val = ftm_quad_get(FTM2);          //获取FTM2 正交解码 的脉冲数(负数表示反方向)
        ftm_quad_clean(FTM2);
    }
    return val;
}

本文所用到的工程文件:http://git.oschina.net/chenxuuu/K60-test/tree/master/正交解码

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注