2023-04-24 05:53 AM - edited 2023-11-20 07:18 AM
We are encountering this while using Low Power UART on STM32L412KB microcontroller. We are working on a battery-powered product that has two on board SoCs. One of them is STM32 and the other is Nordic. The two socs communicate with each other over a UART interface with a hardware flow control.
The issue that we are facing is the RTS line on the STM32 goes HIGH after the reception of the STOP bit. The UART configuration details are given below:
Parity Bit: None
Stop Bit: 1 bit
Baud Rate : 9600
UART Peripheral Clock (LSE) : 32.768 kHz
Rx/Tx DMA: Enabled
Please find below the the DSO captured waveforms when above issue happens.
According to the datasheet the RTS line should go HIGH during the STOP bit reception. Refer below image for reference.
We are transmitting 56 bytes of data packet from Nordic to STM32. Another interesting pattern that we have noticed is initial two out of three consecutive transactions have this issue. Refer the below image.
Because of this we are sometimes getting UART overrun error although the RX DMA is enabled. In the below image the Test Point (TP) line is made high when the overun error is encountered in the UART error handler.
We need a support ASAP as project has reached the field trial stage and needs a resolution on urgent basis.