2016-09-07 02:40 AM
Hi.....!!!
I am using STM32F438IIT6 for UART Receive in Interrupt mode.I have used STM32Cube Mx for UART configuration & code generation.In Cube I have configured USART1 as followsMode: Asynchronous mode. H/W Flow Control (RS232) - DisableClock Configuration: My APB1 peripheral clock is 42MHzUSART1 Configuration : Baud Rate : 115200 bits/sec, Word length : 8 bits, parity : None, Stop bit: 1, Oversampling: 16 samples and I have enabled USART1 global interrupt. I have used HAL_UART_Receive_IT function for enabling UART receive interrupt. I am receiving each byte in each interrupt. But I am getting UART Overrun error every time. How to fix this Overrun error ?Is there is any other better option to receive high speed UART datas??Please help me in this regards. #hal #uart #no-hablo-hal #stm32f439 #uart_receive_it2016-09-07 06:12 AM
The system you describe should be capable of dealing with multiple 115200 baud streams without issue.
2016-09-07 10:06 PM
2017-09-04 02:33 AM
Hi raja,
Right now I am facing the same issue with DMA.
Did you get fixed your issue ? If yes how did you manage to do it ?
Thanks.
2017-09-14 07:14 PM
Hi All,
I'm facing the same problem with a stm32f413, only when I set code optimization on 3 it works fine. But It should easily handle 115200 baud without optimization, because that is what I need for debugging. Haven't found a decent solution yet but still working on it.
edit: I could solve it by setting the APB clock higher. I made the mistake to use 16MHz, now it's changed to 25MHz.
Cheers,