21ic问答首页 - STM32F407 在定时中断中向串口发送数据,为什么会陷入死循环
STM32F407 在定时中断中向串口发送数据,为什么会陷入死循环
叶花永不相见2022-09-27
定时器中断服务函数代码如下:
//定时器TIM2(mcuitf接口的tm0)中断函数
void ir_func_tm0()
{
if (TIM_GetITStatus(TIM2, TIM_IT_Update) == SET)
{
USART_SendData(USART1, 'A');
while(USART_GetFlagStatus(USART1, USART_FLAG_TXE) == RESET);
TIM_ClearITPendingBit(TIM2, TIM_IT_Update);
}
}
为什么会陷入while循环里呀,好让人费解啊。请各位不吝赐教,万分感谢。
//定时器TIM2(mcuitf接口的tm0)中断函数
void ir_func_tm0()
{
if (TIM_GetITStatus(TIM2, TIM_IT_Update) == SET)
{
USART_SendData(USART1, 'A');
while(USART_GetFlagStatus(USART1, USART_FLAG_TXE) == RESET);
TIM_ClearITPendingBit(TIM2, TIM_IT_Update);
}
}
为什么会陷入while循环里呀,好让人费解啊。请各位不吝赐教,万分感谢。
赞0
评论
2022-10-02
赞0
评论
2022-09-29
赞0
评论
2022-09-29
我设置了,但还是卡死在while循环
您需要登录后才可以回复 登录 | 注册