Tool/software:
Hi,
When I call UART_read() again from inside the Rx callback, the callback is invoked only once (no subsequent callbacks).
When I call UART_read() from a task/background context, the callback is invoked repeatedly as expected. Why? I want to handle this situation in rxcallback function.
static UART_Transaction newTrans;
static volatile uint8_t rxBuf[8];
void UART_RX_Callback(UART_Handle handle, UART_Transaction *trans)
{
UART_read(handle, &newTrans);
}
void UART_TX_Callback(UART_Handle handle, UART_Transaction *trans)
{
}
void empty_main(void *args)
{
/* Open drivers to open the UART driver for console */
Drivers_open();
Board_driversOpen();
UART_Transaction_init(&newTrans);
newTrans.buf = (void *) rxBuf;
newTrans.count = 8;
UART_read(gUartHandle[CONFIG_UART0], &newTrans);
while(1);
Board_driversClose();
Drivers_close();
}