Skip to main content
Jungle
Associate
March 21, 2019
Question

[F407VGT6] LL DMA USART sends "wrong" number of bytes

  • March 21, 2019
  • 0 replies
  • 633 views

I'm trying to migrate my project from HAL to LL. I use USART+DMA. Reception is OK, but transmission is not.

There's a uint8_t transmission buffer. E.g. it begins with {1, 2, 3, 4}.

  • When I set DMA data length to 1, nothing is sent
  • When I set data length to 2, {0xFF} is sent
  • When I set data length to 3, {0x01, 0xFF} is sent
  • When I set data length to 4, {0x01, 0x02, 0xFF} is sent

"Sent" means what I see in the port monitor on my PC.

One more. What is the safe way to disable DMA stream outside the interrupt?

P.S. IAR v8.32.2, stm32cube fw f4 v1.24.0

P.P.S. I've dattached sample project.

This topic has been closed for replies.