HardwareSerial.h File Reference
#include <cstdint>
#include <Delegate.h>
#include <Data/Stream/ReadWriteStream.h>
#include <BitManipulations.h>
#include <driver/uart.h>
Include dependency graph for HardwareSerial.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  HardwareSerial
 Hardware serial class. More...
 

Macros

#define UART_ID_0   0
 ID of UART 0. More...
 
#define UART_ID_1   1
 ID of UART 1. More...
 
#define NUMBER_UARTS   UART_COUNT
 Quantity of UARTs available. More...
 
#define DEFAULT_RX_BUFFER_SIZE   256
 
#define DEFAULT_TX_BUFFER_SIZE   0
 

Typedefs

typedef Delegate< void(Stream &source, char arrivedChar, uint16_t availableCharsCount)> StreamDataReceivedDelegate
 Delegate callback type for serial data reception. More...
 
typedef Delegate< void(HardwareSerial &serial)> TransmitCompleteDelegate
 Delegate callback type for serial data transmit completion. More...
 

Enumerations

enum  SerialConfig {
  SERIAL_5N1 = UART_5N1, SERIAL_6N1 = UART_6N1, SERIAL_7N1 = UART_7N1, SERIAL_8N1 = UART_8N1,
  SERIAL_5N2 = UART_5N2, SERIAL_6N2 = UART_6N2, SERIAL_7N2 = UART_7N2, SERIAL_8N2 = UART_8N2,
  SERIAL_5E1 = UART_5E1, SERIAL_6E1 = UART_6E1, SERIAL_7E1 = UART_7E1, SERIAL_8E1 = UART_8E1,
  SERIAL_5E2 = UART_5E2, SERIAL_6E2 = UART_6E2, SERIAL_7E2 = UART_7E2, SERIAL_8E2 = UART_8E2,
  SERIAL_5O1 = UART_5O1, SERIAL_6O1 = UART_6O1, SERIAL_7O1 = UART_7O1, SERIAL_8O1 = UART_8O1,
  SERIAL_5O2 = UART_5O2, SERIAL_6O2 = UART_6O2, SERIAL_7O2 = UART_7O2, SERIAL_8O2 = UART_8O2
}
 
enum  SerialMode { SERIAL_FULL = UART_FULL, SERIAL_RX_ONLY = UART_RX_ONLY, SERIAL_TX_ONLY = UART_TX_ONLY }
 values equivalent to uart_mode_t More...
 
enum  SerialStatus { eSERS_BreakDetected, eSERS_Overflow, eSERS_FramingError, eSERS_ParityError }
 Notification and error status bits. More...
 

Variables

HardwareSerial Serial
 Global instance of serial port UART0. More...