正交解码模式初始化例程如下,该例程使用A10和A11引脚输入作为旋转编码器的A相和B相输入。
[plain] view plaincopy
void FTM2_QUAD_Iint(void)
{
PORTA_PCR10= PORT_PCR_MUX(6); // 设置引脚A10引脚为FTM2_PHA功能
PORTA_PCR11= PORT_PCR_MUX(6); // 设置引脚A11引脚为FTM2_PHB功能
SIM_SCGC3|=SIM_SCGC3_FTM2_MASK;//使能FTM2时钟
FTM2_MODE |= FTM_MODE_WPDIS_MASK;//写保护禁止
FTM2_QDCTRL|=FTM_QDCTRL_QUADMODE_MASK;//AB相同时确定方向和计数值
FTM2_CNTIN=0;//FTM0计数器初始值为0
FTM2_MOD=65535;//结束值
FTM2_QDCTRL|=FTM_QDCTRL_QUADEN_MASK;//启用FTM2正交解码模式
FTM2_MODE |= FTM_MODE_FTMEN_MASK;//FTM2EN=1
FTM2_CNT=0;
}
|