Hi All,
I have some code that I'm porting from a Zilog platform over to the nRF52 platform. The code uses 1 timer and 1 uart. The goal of the code is to handle RS485 messages.
First, a quick question on the timer, I'm using the following function:
nrf_drv_timer_extended_compare(&TIMER_MB, NRF_TIMER_CC_CHANNEL0, time_ticks, NRF_TIMER_SHORT_COMPARE0_CLEAR_MASK, true);
This is from the timer example. Am I correct that this timer will continue to call interrupts at the specified rate until I specifically call nrf_drv_timer_disable?
Second part of the question, is I'm using the following to setup a UART:
APP_UART_FIFO_INIT(&comm_params, UART_RX_BUF_SIZE, UART_TX_BUF_SIZE, uart_error_handle, APP_IRQ_PRIORITY_LOWEST, err_code);
(I've run the example and had everything running with putty, a windows serial program using rs232 protocol.)
For my RS485 app I need to toggle when the device can read and when it transmit. What I'm currently doing is app_uart_close(), and then redefine the port in the desired mode.
My real question is, I perform "CRITICAL_REGION_ENTER() " when making changes to the UART and after everything is setup I perform "CRITICAL_REGION_EXIT()"
my problem is for some reason it is triggering a NRF_BREAKPOINT_COND at CRITICAL_REGION_EXIT() when stepping through in debug mode. (I'm running in SEGGER Embedded Studio.)
Any thoughts? Should I be using different functions to toggle the UART setup?
thanks!
Bob
