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

nRF52810 uart RX issue

Hi team, I faced the following problem: there is a custom board with nRF52810 on it, UART is used on this board.

I set up Debug configuration and UART is working OK, but when I switched to Release config UART is not working properly (there is no UART RX interrupt). I managed to figure out what is wrong. In order to INIT UART (one of the settings) you have to specify RX buffer length. So, in Debug config after init function settings are correct and UART RX buffer length keeps its value and the state is INITIALIZED. If I switch to Release config UART RX buffer length is 0 and the state is UNINITIALIZED. I tried to change different combination of optimization level, but nothing works. How to solve the problem and why it happens?
IDE: Segger Studio.

Parents Reply
  • Thanks for information, but i've already made all the necessary changes. The only thing that helped me is the second call of this function nrf_drv_uart_rx(&m_uart, m_rx_buffer, 1), so the first call I mde inside uart_init() function (as usual) and the second call I made outside uart_init() function. And this is works, but I can't explane why. Any ideas?

Children
No Data
Related