diff options
Diffstat (limited to 'cores')
| -rw-r--r-- | cores/arduino/HardwareSerial.cpp | 4 | 
1 files changed, 3 insertions, 1 deletions
| diff --git a/cores/arduino/HardwareSerial.cpp b/cores/arduino/HardwareSerial.cpp index 1a2f8ce..2a256e0 100644 --- a/cores/arduino/HardwareSerial.cpp +++ b/cores/arduino/HardwareSerial.cpp @@ -53,6 +53,8 @@  // using a ring buffer (I think), in which head is the index of the location  // to which to write the next incoming character and tail is the index of the  // location from which to read. +// NOTE: a "power of 2" buffer size is reccomended to dramatically +//       optimize all the modulo operations for ring buffers.  #if (RAMEND < 1000)    #define SERIAL_BUFFER_SIZE 16  #else @@ -426,7 +428,7 @@ void HardwareSerial::end()  int HardwareSerial::available(void)  { -  return (int)(SERIAL_BUFFER_SIZE + _rx_buffer->head - _rx_buffer->tail) % SERIAL_BUFFER_SIZE; +  return ((unsigned int)(SERIAL_BUFFER_SIZE + _rx_buffer->head - _rx_buffer->tail)) % SERIAL_BUFFER_SIZE;  }  int HardwareSerial::peek(void) | 
