我正在为一个项目使用
STM32F767NGHXX。我必须使用 USART3 和 UART7。我想将两个 uart 与 DMA 传输一起使用,但这 2 个 uart 使用相同的 DMA 流。其他选项可以将一个与 DMA 一起使用,另一个使用正常的 UART 功能。问题是这个项目的要求之一是使用尽可能少的阻塞函数,所以在这种情况下 DMA 函数更好,只要它们使用更少的微。
因此,我试图 deInit UART + DMA 并在有或没有 DMA 配置的情况下重新初始化它们(取决于哪个 UART 需要传输,那时它将使用 DMA),但我无法使其工作。一旦我在我的代码开头将一个 Uart 链接到 DMA,它将是我唯一可以与 DMA 一起使用的。(一旦为 DMA Stream 选择了 Chanell,似乎无法更改)
知道任何人如何在 DMA 流中的 Selected Chanell 中进行此更改)?
还是我不可能将一个 UART 与 DMA 一起使用,而另一个与正常 (IT) UART 功能一起使用?