diff --git a/cores/esp8266/HardwareSerial.cpp b/cores/esp8266/HardwareSerial.cpp index c64c13469..1be050e8c 100644 --- a/cores/esp8266/HardwareSerial.cpp +++ b/cores/esp8266/HardwareSerial.cpp @@ -60,6 +60,15 @@ void HardwareSerial::end() _uart = NULL; } +void HardwareSerial::updateBaudRate(unsigned long baud) +{ + if(!_uart) { + return; + } + + uart_set_baudrate(_uart, baud); +} + size_t HardwareSerial::setRxBufferSize(size_t size){ if(_uart) { _rx_size = uart_resize_rx_buffer(_uart, size); @@ -133,8 +142,8 @@ unsigned long HardwareSerial::detectBaudrate(time_t timeoutMillis) return detectedBaudrate; } -size_t HardwareSerial::readBytes(char* buffer, size_t size) -{ +size_t HardwareSerial::readBytes(char* buffer, size_t size) +{ size_t got = 0; while (got < size) @@ -147,7 +156,7 @@ size_t HardwareSerial::readBytes(char* buffer, size_t size) got += read(buffer + got, std::min(size - got, avail)); } return got; -} +} #if !defined(NO_GLOBAL_INSTANCES) && !defined(NO_GLOBAL_SERIAL) HardwareSerial Serial(UART0); diff --git a/cores/esp8266/HardwareSerial.h b/cores/esp8266/HardwareSerial.h index 88130ec7b..2d7f631db 100644 --- a/cores/esp8266/HardwareSerial.h +++ b/cores/esp8266/HardwareSerial.h @@ -88,6 +88,8 @@ public: void end(); + void updateBaudRate(unsigned long baud); + size_t setRxBufferSize(size_t size); size_t getRxBufferSize() {