diff --git a/cores/esp32/esp32-hal-uart.c b/cores/esp32/esp32-hal-uart.c index 251cc457..1f82d348 100644 --- a/cores/esp32/esp32-hal-uart.c +++ b/cores/esp32/esp32-hal-uart.c @@ -332,7 +332,7 @@ void uartRxFifoToQueue(uart_t* uart) c = uart->dev->fifo.rw_byte; #else while (uart->dev->status.rxfifo_cnt) { - c = uart->dev->ahb_fifo.rw_byte; + c = READ_PERI_REG(UART_FIFO_AHB_REG(uart->num)); #endif xQueueSend(uart->queue, &c, 0); } @@ -472,7 +472,7 @@ static void uart_on_apb_change(void * arg, apb_change_ev_t ev_type, uint32_t old c = uart->dev->fifo.rw_byte; #else while(uart->dev->status.rxfifo_cnt != 0) { - c = uart->dev->ahb_fifo.rw_byte; + c = READ_PERI_REG(UART_FIFO_AHB_REG(uart->num)); #endif if(uart->queue != NULL ) { xQueueSend(uart->queue, &c, 1); //&xHigherPriorityTaskWoken);