STM32F4 DMA串口

STM32F4 DMA UART

我正在使用带 DMA 的 STM32F401RE UART 来接收连续的数据流并通过 BLE 发送。我正在使用大小为 20 或 1023 字节的缓冲区。我面临着 DMA 缓冲区满中断停止工作的问题,因为它开始连续接收数据。 当我以非连续方式通过 PC COM 端口以块(20 或 1023 字节)发送数据时,它工作得很好。我正在尝试在调试器模式下工作,它与 PC COM 端口设置一起工作,并在 DMA 回调函数中命中断点,但不在数据流上。 我检查了数据流模块是否工作正常。

程序正在进入 "HAL_UART_ErrorCallback" 功能,我正在重新激活 "HAL_UART_Receive_DMA" 但仍未解决问题。

请告诉我如何解决这个问题。

非常感谢。

亲切的问候, 加利卜

问题已解决,噪声导致 UART 信号出现问题。