STM32 串口底层深度解析|USART 中断标志、硬件 FIFO,乱码根源底层定位很多人调试 STM32 串口,只停留在 HAL 库HAL_UART_RxCpltCallback回调函数,遇到乱码、丢字节、偶发接收异常,只会怀疑波特率或者上位机。 但实际上大量工程里的串口玄学 bug,根源来自USART 硬件中断标志理解错误、硬件 FIFO 溢出、帧错误 / 噪声标志未及时清除。 本文从寄存器底层讲清楚 STM32 USART 硬件机制,拆解中断标志、硬件 FIFO 工作逻辑,从硬件层面定位乱码、丢包的真实原因,附带极简测试代码与工程排查方法。