新手入门
- 积分
- 19
- 金钱
- 19
- 注册时间
- 2018-1-20
- 在线时间
- 4 小时
|
5金钱
今天写串口遇到个问题,疑惑不解。
下面是原子哥的源代码,我做了点改动,只想在串口助手输出一行语句。
但串口助手里一直循环接收出现这个语句,为什么?求解决办法
int main(void)
{
u8 t;
u8 len;
u16 times=0;
NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);
delay_init(168);
uart_init(115200);
LED_Init();
delay_ms(100);
printf("\r\nALIENTEK 探索者 STM32F407 开发板 串口实验\r\n");
//将代码里while循环注释掉
/*while(1)
{
if(USART_RX_STA&0x8000)
{
len=USART_RX_STA&0x3fff;//μÃμ½′Ë′νóêÕμ½μÄêy¾Y3¤¶è
printf("\r\nÄú·¢ËíμÄÏûÏ¢Îa:\r\n");
for(t=0;t<len;t++)
{
USART_SendData(USART1, USART_RX_BUF[t]); //Ïò′®¿ú1·¢Ëíêy¾Y
while(USART_GetFlagStatus(USART1,USART_FLAG_TC)!=SET);//μè′y·¢Ëí½áêø
}
printf("\r\n\r\n");//2åèë»»DD
USART_RX_STA=0;
}else
{
times++;
if(times%5000==0)
{
printf("\r\nALIENTEK ì½Ë÷ÕßSTM32F407¿a·¢°å ′®¿úêμÑé\r\n");
printf("ÕyμãÔ-×ó@ALIENTEK\r\n\r\n\r\n");
}
if(times%200==0)printf("Çëêäèëêy¾Y,òÔ»Ø3μ¼ü½áêø\r\n");
if(times%30==0)LED0=!LED0;//éá˸LED,ìáê¾Ïμí3ÕyÔúÔËDD.
delay_ms(10);
}
}*/
}
|
-
|