void uart_echo(void *args) { UART_Params uartParams; UART_Params_init(&uartParams); uartParams.baudRate = 115200U; uartParams.transferMode = UART_CONFIG_MODE_INTERRUPT; uartParams.readMode = UART_TRANSFER_MODE_BLOCKING; uartParams.writeMode = UART_TRANSFER_MODE_BLOCKING; uartParams.dataLength = UART_LEN_8; uartParams.stopBits = UART_STOPBITS_1; uartParams.parityType = UART_PARITY_NONE; uartParams.readCallbackFxn = NULL; uartParams.writeCallbackFxn = NULL; UART_Transaction uartTrans; UART_Handle handle; handle = UART_open(0U, &uartParams); if (handle == NULL) { printf("UART handle is NULL"); } UART_Transaction_init(&uartTrans); uartTrans.timeout = 10000U; while(1) { printf("########## New Read Started ##########\n"); uint32_t status; uint8_t printidx = 0U; uint8_t pu8TempUARTdata[7U]; uartTrans.buf = (void*)&pu8TempUARTdata[0]; uartTrans.count = 7; status = UART_read(handle, &uartTrans); if (status == 0 && pu8TempUARTdata[0] == 1) { while (printidx<7) { printf("Value at idx %u = %u\n", printidx, pu8TempUARTdata[printidx]); printidx++; } printf("################################\n"); } else if (status == 0 && pu8TempUARTdata[0] != 1) { printf("Character missed/ Incorrect read\n"); // while (printidx<7) // { // printf("Value at idx %u = %u\n", printidx, pu8TempUARTdata[printidx]); // printidx++; // } printf("################################\n"); } else { printf("UART Read Operation Failed\n"); } } return; }