STM32–串口接收字符串的一种避免溢出和中断紊乱的方法:
//需使能接收非空 和 总线空闲中断
char USART2_IT_string[400];
//全局变量,最终收到的字符串放入,通过判断是否为空来判断是否接收到数据,使用完这个字符串后**务必清零**
char USART2_IT_string_buf[400];
//全局变量,接收字符串的缓存
void USART2_IRQHandler(void){
//接收字符串的中断处理函数
//u8 char_buf;//改为了全局变量
if(SET == USART_GetITStatus(USART2,USART_IT_RXNE)){
USART_ClearITPendingBit(USART2,USART_IT_RXNE)