OS in development environment ：Windows7HARD :(Taiyo Yuden)EBSHSN Series Evaluation Board : Central / PeripheralsCPU :(Nordic) nRF52832 / ARMR Cortex-M4F 32 bit processor 28-pin Land Grid Array / 15GPIOs / SWDSoft Ver:nRF5_SDK_15.3.0_59ac345
Because a UART FIFO error has occurred in the device currently under development,Confirmed the operation of the sample program.We communicated with the sample program of ble_app_uart_c and ble_app_uart.result:If 2kbyte data is transmitted continuously, a FIFO error will occur regardless of whether or not flow control is performed with the UART.Please tell me how to take measures.
If 2kbyte data is transmitted continuously, a FIFO error will occur regardless of whether or not flow control is performed with the UART.Please tell me how to take measures.
Could you provide some more information? What function causes the error and what kind of error does the function return?
This video will help you figure it out:
On the UART side, app_uart is not recommended for your test. nrfx_uart works better. IOsonata library is much better https://github.com/IOsonata/IOsonata/blob/master/ARM/Nordic/src/uart_nrf5x.cpp
here are comparisons : tests performed on PCA10040. nRF52 UART Tx to PC (python Rx) via jlink uart bridge
app_uart C only drops a lot: ~ 69965 Bytes/s
nrfx_uart C only with DMA better : 75753 Bytes/s, no drop
IOSonata C++ object oriented UART no DMA : 86607 Bytes/s
IOsonata C++ object oriented with DMA : 100000 Bytes/s. Few drops via jlink. No drop via IDAP-Link or FTDI.
"Error Action (Central)"When 2kbyte communication is performed, an error occurs at the following position regardless of the UART flow control.("App_fifo_put()" of "ble_app_uart_c" during UART transmission))I don't understand the cause.How can I measure or confirm the cause?
That is because the fifo is full and the byte is dropped. That is why in my test, you see lots of drops with app_uart.
1) What are the usage limits for uart_nrf5x.c?
2) Please tell me how to install "ble_app_uart_c" and "ble_app_uart".
Thank you very much.