遇到的问题
单片机STM32F103RCT6串口调试,返回值有问题,返回值一直都是乱码的
所使用的代码如下:
int main(void)
{
u8 len;
u16 times=0;
HAL_Init();
Stm32_Clock_Init(RCC_PLL_MUL9);
delay_init(72);
uart_init(115200);
LED_Init();
KEY_Init();
while(1)
{
if(USART_RX_STA&0x8000)
{
len=USART_RX_STA&0x3fff;
printf("\r\nÄú·¢Ë͵ÄÏûϢΪ:\r\n");
HAL_UART_Transmit(&UART1_Handler,(uint8_t*)USART_RX_BUF,len,1000);
while(__HAL_UART_GET_FLAG(&UART1_Handler,UART_FLAG_TC)!=SET);
printf("\r\n\r\n");//²åÈë»»ÐÐ
USART_RX_STA=0;
}else
{
times++;
if(times%5000==0)
{
printf("\r\nALIENTEK MiniSTM32开发板 串口试验\r\n");
printf("正点原子@ALIENTEK\r\n\r\n\r\n");
}
if(times%200==0)printf("请输入数据,以回车键结束\r\n");
if(times%30==0)LED0=!LED0; // 闪烁LED,提示系统正在运行.
delay_ms(10);
}
}
}
现象
LED是一直闪烁的