/*! * @brief get input charater. * */ char getInput() { char ch; /* We use GETCHAR() for BM and UART Blocking technic for other RTOS. */ #if (defined FSL_RTOS_BM) || ((defined FSL_RTOS_MQX)&&(MQX_COMMON_CONFIG != MQX_LITE_CONFIG)) ch = GETCHAR(); #else LPUART_DRV_ReceiveDataBlocking(BOARD_DEBUG_UART_INSTANCE, (uint8_t*)(&ch), 1, OSA_WAIT_FOREVER); #endif // FSL_RTOS_BM return ch; }
static int nio_serial_read(void *dev_context, void *fp_context, void *buf, size_t nbytes) { NIO_SERIAL_DEV_CONTEXT_STRUCT *serial_dev_context = (NIO_SERIAL_DEV_CONTEXT_STRUCT *)dev_context; #if PLATFORM_LPUART_ENABLED if (kStatus_UART_Success != LPUART_DRV_ReceiveDataBlocking(serial_dev_context->instance, buf, nbytes, OSA_WAIT_FOREVER)) #else if (kStatus_UART_Success != UART_DRV_ReceiveDataBlocking(serial_dev_context->instance, buf, nbytes, OSA_WAIT_FOREVER)) #endif { errno = EIO; } return (nbytes - serial_dev_context->uart_state.rxSize); }