stm8s003更新定时器的问题

我用stm8s003做一个马达停止检测的实验,当马达运行时不断的有触发信号给芯片,每接到一个信号,定时器就从设定的时间开始定时,就是定时器会以最后一个触发信号开始定时,但实验时发现定时器定时时间会受到上一触发器的影响,应该是不能初始化定时器。下面是代码

void Tim1_Init(uint16_t value) //每接到一个触发信号就重新初始化定时器
{
TIM1_TimeBaseInit(200, TIM1_COUNTERMODE_UP, 999, value); //value 设定的时间
TIM1_SetCounter(0);
TIM1_ARRPreloadConfig(ENABLE);
TIM1_ITConfig(TIM1_IT_UPDATE , ENABLE);
TIM1_Cmd(ENABLE);

}
我的方法是每接到一个触发信号就初始化一次定时器,用的是库的方法写

1个回答

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问