Hello NXP Support,
I am working on the S32K324 with LPUART and DMA. I encountered an issue when enabling the transmit DMA request (BAUD.TDMAE bit).
Here is the function I am using, and Enable=TRUE:
Observed behavior:
When I run the code step-by-step (single-step in debugger), it works correctly.
When I run the code in resume mode, the system fails (DMA transfer does not start)
Any guidance, best practices, or example sequence for enabling LPUART TX DMA would be greatly appreciated.
Thank you,
[Rick]
已解决! 转到解答。
Hi @RickYeh777
Sorry for the late reply. There really should be no issue —unless the same Dma channel is used for Crc and Uart communication.
I've imported the Crc example, and added Uart module with Dma transmission, and everything seems to be working:
Please confirm if pin assignation is correct, Dma channel configuration matches the Uart MUX, and if same channel is not used for Tx/Rx:
Best regards,
Julián
Hi @RickYeh777,
Could you please share your configuration and routine (main.c)?
There is an existing example for LPUART + DMA, please confirm if your routine is configuring everything correctly: Example S32K312 UART Transmit & Receive Using DMA DS3.5 RTD300 - NXP Community.
Best regards,
Julián
Thank you for your quick response and accurate judgment.
Originally, this project’s LPUART + DMA was working normally. After I added the CRC32 + DMA code, it started failing.
Now, if I remove the CRC32 + DMA code, the LPUART + DMA still works correctly.
However, I cannot figure out how the CRC32 + DMA code affects the operation of LPUART + DMA.
It is really not easy to find the key configuration inside S32 Config Tools.
Below I have attached the CRC32 + DMA configuration, hoping it may reveal the potential issue.
Hi @RickYeh777
Sorry for the late reply. There really should be no issue —unless the same Dma channel is used for Crc and Uart communication.
I've imported the Crc example, and added Uart module with Dma transmission, and everything seems to be working:
Please confirm if pin assignation is correct, Dma channel configuration matches the Uart MUX, and if same channel is not used for Tx/Rx:
Best regards,
Julián