36typedef std::map<OutputGPIO, std::map<InputGPIO, InputNumber>>
ButtonMatrix;
52 uint8_t in = (uint8_t)first;
53 for (
auto row : selectors)
55 matrix[row][col] = in++;
150template <
typename PinTags>
160 : std::map<PinTags,
InputNumber>(), inputGPIO{inputPin} {}
170 for (
auto i = this->begin(); i != this->end(); i++)
208template <
typename PinTags>
260template <
typename PinTags>
Types and constants required for custom firmware setup.
std::vector< InputGPIO > InputGPIOCollection
Collection of input GPIOs.
std::vector< OutputGPIO > OutputGPIOCollection
Collection of output GPIOs.
Generic analog multiplexer chip.
AnalogMultiplexerChip(InputGPIO inputPin)
Construct a new Analog Multiplexer Chip object.
void reserve_and_book()
Reserve the input pin and book all input numbers.
InputGPIO getInputGPIO()
Get the input GPIO pin.
void reserve() const
Reserve this GPIO for exclusive use.