cancel
Showing results for 
Search instead for 
Did you mean: 

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

Jungle
Associate II

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.

0 REPLIES 0