本文最后更新于 3202 天前,其中的信息可能已经有所发展或是发生改变。
本程序使用山外库: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/正交解码