Serial multiplexer

#include "serialMux.tcc"

Class definition

using SerialMux = SerialMux_<4, 6>

Serial multiplexer.

template<uint8_t maxPorts, uint8_t bits>
class SerialMux_

Serial multiplexer.

Template Parameters:
  • maxPorts – Maximum number of virtual serial ports.

  • bitsBuffer size control (2^bits).

Public Functions

SerialMux_(Stream &serial)

Create a serial multiplexer.

Parameters:

serial[in] Serial device.

uint8_t add(Buffer<bits> *buffer)

Add a virtual serial device.

Parameters:

buffer[in] Pointer to virtual serial device buffer.

Returns:

Virtual serial port number.

void write(uint8_t const port, uint8_t const data)

Write one byte of data.

Parameters:
  • port[in] Virtual serial port number.

  • data[in] Data.

void update()

Send incoming data to virtual serial ports.