This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

UARTE in circular mode

Hi,

I have a question about the UARTE peripheral. is it possible to keep the DMA running and let it write to ram in a circular way? I used DMA on the stm32 before and there we can set it in a circular mode. When the ptr reached the last configured ram address it automatically starts from the front. And while the DMA is running, is there any way to get the current amount in the buffer? Now i have to stop rx before the amount register becomes valid.

Parents
  • That would probably have been a good idea. We have tried to limit this beeing a problem by dividing the RAM interface into multiple RAM AHB slaves. So if you make sure UARTE is the only (or at least the one with the highest priority) peripheral accessing a particular block / AHB slave, you can assume it will use the minimum access time wich is 2 16M cycles = 125ns. Maybe use double that to be sure. See the memory and AHB chapters in the PS for details.

Reply
  • That would probably have been a good idea. We have tried to limit this beeing a problem by dividing the RAM interface into multiple RAM AHB slaves. So if you make sure UARTE is the only (or at least the one with the highest priority) peripheral accessing a particular block / AHB slave, you can assume it will use the minimum access time wich is 2 16M cycles = 125ns. Maybe use double that to be sure. See the memory and AHB chapters in the PS for details.

Children
No Data
Related