串口溢出后,因为接收移位寄存器不会把接收到的数据放到接收寄存器中,则RXNE/RXFNE不会再置位,不能再接收,表现为串口死机
__STATIC_INLINE uint32_t LL_USART_IsActiveFlag_RXNE_RXFNE(USART_TypeDef *USARTx) { return ((READ_BIT(USARTx->ISR, USART_ISR_RXNE_RXFNE) == (USART_ISR_RXNE_RXFNE)) ? 1UL : 0UL); }
__HAL_UART_DISABLE(huart); CLEAR_BIT(huart->Instance->CR3, USART_CR3_OVRDIS); __HAL_UART_ENABLE(huart);