cancel
Showing results for 
Search instead for 
Did you mean: 

DMA UART RX idle line interrupt earlier

WBria.1
Associate II

Hi,

i have been using F030C6 with 1 uart and make DMA works. but when i received a modem message( like AT+CPIN? e.g.) DMA stops 2 or more times. We can see the image below that i put one toogle pin to show when DMA interrupt occurs.

my question is how can i configure this IDLE minimum PERIOD?

1 ACCEPTED SOLUTION

Accepted Solutions
Pavel A.
Evangelist III

What you actually want in this case is RTO (receive timeout), not "idle" event.

But UARTs of STM32F0 don't have RTO feature.

Either use a timer or as @Piranha​ advises, don't care for pauses, parse continuously.

View solution in original post

2 REPLIES 2
Piranha
Chief II

First, implement a sane UART driver:

https://github.com/MaJerle/stm32-usart-uart-dma-rx-tx

Second, you don't need to change the IDLE period, but instead implement a proper AT message parser, which doesn't care for pauses.

Pavel A.
Evangelist III

What you actually want in this case is RTO (receive timeout), not "idle" event.

But UARTs of STM32F0 don't have RTO feature.

Either use a timer or as @Piranha​ advises, don't care for pauses, parse continuously.