初级会员

- 积分
- 52
- 金钱
- 52
- 注册时间
- 2020-10-15
- 在线时间
- 8 小时
|
今天学串口通信,教程的简单实例是收到什么,发送什么。通过开启RXNE中断来实现。我想加一点,发送数据后在打印一个数字。
开启了TXE中断,也清除了TXE标志位。结果是串口助手不停打印0 关键代码如下,请问哪里出问题了。
int main(void)
{
usart_init();
NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);
while(1);
/*USART_Cmd(USART1,ENABLE);
USART_ITConfig(USART1,USART_IT_RXNE,ENABLE);
USART_ClearFlag(USART1,USART_FLAG_TXE);
USART_ITConfig(USART1,USART_IT_TXE,ENABLE);
void USART1_IRQHandler(void)
{
u16 re;
int i=0;
if(USART_GetITStatus(USART1,USART_IT_RXNE))
{
re=USART_ReceiveData(USART1);
USART_SendData(USART1,re);
}
if(USART_GetITStatus(USART1,USART_IT_TXE))
{
USART_ClearFlag(USART1,USART_FLAG_TXE);
printf("%d\n",i);
}
}
*/
}
|
|