初学者在做定时器led闪烁试验,想知道能不能用查询标志位的办法来控制led灯。
{ LED_GPIO_Config();
TIM6_Config();
while(1)
{ TIM_ClearFlag(TIM6,TIM_FLAG_Update);
GPIO_ResetBits(GPIOD,GPIO_Pin_2);
while(TIM_GetFlagStatus(TIM6,TIM_FLAG_Update)==SET);
TIM_ClearFlag(TIM6,TIM_FLAG_Update);
GPIO_SetBits(GPIOD,GPIO_Pin_2);
while(TIM_GetFlagStatus(TIM6,TIM_FLAG_Update)==SET);
}
}
这是主程序,其他的参数都配置好了。
想到一个问题,当我复位TIM_FLAG_Update这个标志位时,定时器是不是仍在重复计数,还是怎么了,如果我把它复位了,是不是等他再置位的时候就可以用了。
因为这个主程序最后卡在while那里就不动了,本菜鸟也弄不明白,不知道有没有大佬能够给小弟一点点拨。谢谢。 |