void BTSTACK_Tasks(void){ if (bytes_to_read && PLIB_USART_ReceiverDataIsAvailable(BT_USART_ID)) { *rx_buffer_ptr++ = PLIB_USART_ReceiverByteReceive(BT_USART_ID); bytes_to_read--; if (bytes_to_read == 0){ (*rx_done_handler)(); } } if (bytes_to_write && PLIB_USART_TransmitterIsEmpty(BT_USART_ID)){ PLIB_USART_TransmitterByteSend(BT_USART_ID, *tx_buffer_ptr++); bytes_to_write--; if (bytes_to_write == 0){ (*tx_done_handler)(); } } // BTstack Run Loop btstack_run_loop_embedded_execute_once(); }
/** * Execute run_loop */ static void btstack_run_loop_embedded_execute(void) { while (1) { btstack_run_loop_embedded_execute_once(); } }