AnsweredAssumed Answered

Uart receive data

Question asked by 涛 李 on Aug 19, 2018
Latest reply on Oct 15, 2018 by Jorge Antonio Alcala Vazquez


There is problem about the function "status_t UART_TransferReceiveNonBlocking(UART_Type *base, uart_handle_t *handle, uart_transfer_t *xfer, size_t *receivedBytes)" in driver fsl_uart.c of K66 MCU. If my xfer defined as follow "uart_transfer_t RvBuffer={DataBuffer,50U};",and my ring buffer size is 100 by call function "UART_TransferStartRingBuffer(UART0, &RingBufferHandle, rxRingBuffer, 100);"does it mean that only when there are 50 bytes data received in ring buffer,the callback function of UART would be called?

Second question: When there are different length UART data frame like 30,40,8 and so on during communication,can I use function "UART_TransferReceiveNonBlocking(UART_Type *base, uart_handle_t *handle, uart_transfer_t *xfer, size_t *receivedBytes)" and set the datasize of xfer to 40 ? In the other words,what I should do to use function UART_TransferReceiveNonBlocking( ) correctly in fixed data frame length communication and varying data frame communication ?

It's would be better to give example code and related detailed documents. Waiting online...

Best regards, Frank