你好,我在用stm8进行正交编码器技术,配置都配了,但一直不能计数
LK_PCKENR1 |=0X80;
TIM1_TimeBaseInit(0,TIM1_COUNTERMODE_UP ,65535,0);
TIM1_SelectMasterSlaveMode(ENABLE);
//TIM1_ICInit(TIM1_CHANNEL_1, TIM1_ICPOLARITY_RISING, TIM1_ICSELECTION_DIRECTTI, TIM1_ICPSC_DIV4, 0x00);
//TIM1_ICInit(TIM1_CHANNEL_2, TIM1_ICPOLARITY_RISING, TIM1_ICSELECTION_DIRECTTI, TIM1_ICPSC_DIV4, 0x00);//
TIM1_EncoderInterfaceConfig(TIM1_ENCODERMODE_TI12, TIM1_ICPOLARITY_FALLING, TIM1_ICPOLARITY_RISING);//TIM1_ENCODERMODE_TI1 TIM1->SMCR |= 0X10; 工作在编码器模式2TIM1_ICPOLARITY_FALLING
TIM1->CCMR1 |= 0X1; //IC1FP1映射到TI1)
TIM1->CCMR2 |= 0X1;
TIM1_ETRClockMode1Config(TIM1_EXTTRGPSC_DIV2, TIM1_EXTTRGPOLARITY_INVERTED, 0x00);
TIM1_SetCounter(0x0010); //设置计数器的初值
TIM1_ARRPreloadConfig(ENABLE);
TIM1_Cmd(ENABLE); //使能计数器计数
|