我用定时器1的通道1做输入捕获,但是想捕获上升与下降。
所以在初始化时,设计上升沿捕获,当进入中断时,读取数据后,在出中断时再设计为下降沿捕获
但是捕出来的结果是不正确的,有没有兄弟们这样做过。。。
请兄弟指点一二。。。。。。
以下是我的初始函数
void Timer1Config(void)
{
TIM1_DeInit();
TIM1_TimeBaseInit(0, TIM1_COUNTERMODE_DOWN, 10000, 0);
TIM1_ICInit(TIM1_CHANNEL_1, TIM1_ICPOLARITY_RISING, TIM1_ICSELECTION_DIRECTTI, TIM1_ICPSC_DIV8, 0x0);
TIM1_ITConfig(TIM1_IT_CC1, ENABLE);
TIM1_ClearFlag(TIM1_FLAG_CC1);
TIM1_Cmd(ENABLE);
}
在中断里用
TI1_Config((u8)TIM1_ICPolarity,
(u8)TIM1_ICSelection,
(u8)TIM1_ICFilter);
这个函数来改变边沿设置!!!
请大家指点。。。。。。。。。 |