atuo黄红蓝 发表于 2019-12-14 10:20:56

STM8捕获问题,TIM2,CH1,没输入却不停进入捕获中断

初始化程序:
void Init_Timer2(void)
{
    TIM2_DeInit();
        GPIO_Init(GPIOC, GPIO_PIN_5, GPIO_MODE_IN_PU_NO_IT);//输入无中断
        TIM2_TimeBaseInit(TIM2_PRESCALER_512, 0xffff);
        TIM2_ICInit(TIM2_CHANNEL_1,TIM2_ICPOLARITY_RISING,TIM2_ICSELECTION_DIRECTTI,TIM2_ICPSC_DIV1,0X00);
      TIM2_ClearFlag(TIM2_FLAG_UPDATE);
        TIM2_ITConfig(TIM2_IT_UPDATE, ENABLE);
        TIM2_ITConfig(TIM2_IT_CC1, ENABLE);
        TIM2_Cmd(ENABLE);
}

仿真执行效果:
明明CC1IF没有置1却进入if,时间很准时,每次都是63个计数值,2ms进入一次,其余都进入else里面,CC2IF\CC3IF都莫名其妙置1.



========================================
但如果我选择通道是CH2的话,按照这个设置就会正常工作,不会有自动进入中断的问题。

atuo黄红蓝 发表于 2019-12-14 10:40:21

好像是配置Option byte的问题,我先测一下http://images2017.cnblogs.com/blog/688269/201710/688269-20171010215548012-1137528634.png

atuo黄红蓝 发表于 2019-12-14 11:11:47

查到了,应该是配置OPT2 PC2重映射问题。

stm1024 发表于 2019-12-14 11:53:52

需要清除中断标志位吗?

atuo黄红蓝 发表于 2019-12-14 12:07:09

stm1024 发表于 2019-12-14 11:53
需要清除中断标志位吗?

找到问题了,是OptionByte 设置PC5重映射问题
页: [1]
查看完整版本: STM8捕获问题,TIM2,CH1,没输入却不停进入捕获中断