20#ifndef SoftwareSerial_h
21#define SoftwareSerial_h
43#define SS_MAX_RX_BUFF 64
59 uint32_t _receivePinRegAddr;
60 uint32_t _transmitPinRegAddr;
62 unsigned long _rx_delay_centering;
63 unsigned long _rx_delay_intrabit;
64 unsigned long _tx_delay;
66 uint16_t _buffer_overflow:1;
69 volatile uint8_t _receive_buffer_tail;
70 volatile uint8_t _receive_buffer_head;
82 static inline void tunedDelay(
unsigned long delay);
168 bool overflow() {
bool ret = _buffer_overflow;
if (ret) _buffer_overflow =
false;
return ret; }
SoftwareSerial controller.
Definition: SoftwareSerial.h:55
SoftwareSerial(uint8_t receivePin, uint8_t transmitPin)
Create SoftwareSerial object.
bool stopListening()
Stop listening.
static int handle_interrupt(int irq, FAR void *context, FAR void *arg)
Interrupt handling.
int peek()
Get a character that was received on the RX pin of the SoftwareSerial object.
bool isListening()
Checks if the SoftwareSerial object is listening.
Definition: SoftwareSerial.h:154
void end()
Deinitialize the serial communication.
bool overflow()
Checks if a SoftwareSerial buffer overflow has occurred.
Definition: SoftwareSerial.h:168
bool listen()
Sets the current object as the "listening" one.
virtual size_t write(uint8_t byte)
Send a single byte to the transmit pin of SoftwareSerial object.
virtual int available()
Get the number of bytes available for reading from a SoftwareSerial objects.
virtual void flush()
There is no tx buffering, simply return.
void begin(long speed)
Initialize the serial communication.
~SoftwareSerial()
Destroy SoftwareSerial object.
virtual int read()
Read data from buffer.
#define SS_MAX_RX_BUFF
Definition: SoftwareSerial.h:43