Beware that this post is related to an SDK in maintenance mode
More Info: Consider nRF Connect SDK for new designs

handle nrf_libuarte_async_evt_t in thread mode

Hello, 

I'm using nRF5 SDK v17.1.0. 

I couldn't find anything about it. Could I ran in some problems if i choose to handle the nrf_libuarte_async_evt_t in thread mode and not anymore inside the isr?

I mean when isr happend copy/queue the event from the uart_event_handler (context and nrf_libuarte_async_evt_t) from isr to thread. Or is that with this libuarte not easily possible?.

May like the nRF5 SDK Scheduler Tutorial ?


Want to handle  uart_event_handler in thread of

nrf_libuarte_async_init(&libuarte, &nrf_libuarte_async_config, uart_event_handler, (void *)&libuarte)


Best regards

 

Parents
  • Hi Julian,

    It is not a bad idea to push the execution away from ISR into thread mode. You seem to know that this can be done by using app_sched_event_put in the uart_event_handler and then looping with app_sched_execute in which ever thread you want to pull these events. This should normally work, but the concern might be that this might become a bottleneck in throughputs or bufferoverflows if there is some other high priority interrupts masking your thread which is pulling and processing this events. 

Reply
  • Hi Julian,

    It is not a bad idea to push the execution away from ISR into thread mode. You seem to know that this can be done by using app_sched_event_put in the uart_event_handler and then looping with app_sched_execute in which ever thread you want to pull these events. This should normally work, but the concern might be that this might become a bottleneck in throughputs or bufferoverflows if there is some other high priority interrupts masking your thread which is pulling and processing this events. 

Children
No Data
Related