![]() |
OpenSourceSimWheelESP32
Open-source wireless steering wheel/button box for ESP32 boards
|
Class for buttons attached to a MCP23017 GPIO expander. More...
#include <InputHardware.hpp>
Public Member Functions | |
| MCP23017ButtonsInput (const MCP23017Expander &inputNumbers, uint8_t address7Bits, I2CBus bus=I2CBus::PRIMARY) | |
| Construct a new MCP23017ButtonsInput object. | |
| virtual uint64_t | read (uint64_t lastState) override |
| Read the current state of the inputs (pressed or released) | |
Public Member Functions inherited from I2CInput | |
| I2CInput (uint8_t address7Bits, I2CBus bus=I2CBus::PRIMARY, uint8_t max_speed_mult=1) | |
| Construct a new I2CButtonsInput object. | |
Public Member Functions inherited from DigitalInput | |
Additional Inherited Members | |
Public Attributes inherited from DigitalInput | |
| uint64_t | mask = ~0ULL |
| Input mask. For read-only. | |
Protected Member Functions inherited from DigitalInput | |
| void | addToMask (uint64_t bitmap) |
| Add an input bitmap to the current mask. | |
Protected Attributes inherited from I2CInput | |
| void * | device = nullptr |
| Slave device in the I2C API (must be type-casted) | |
Class for buttons attached to a MCP23017 GPIO expander.
Definition at line 368 of file InputHardware.hpp.
| MCP23017ButtonsInput::MCP23017ButtonsInput | ( | const MCP23017Expander & | inputNumbers, |
| uint8_t | address7Bits, | ||
| I2CBus | bus = I2CBus::PRIMARY ) |
Construct a new MCP23017ButtonsInput object.
| inputNumbers | Specification of inputs |
| address7Bits | I2C address in 7 bits format |
| bus | Bus where the chip is attached to |
|
overridevirtual |
Read the current state of the inputs (pressed or released)
| lastState | State of the same inputs as recorded in the previous iteration. Whether the current state is unknown, lastState must be returned (properly masked). Must be set to zero at first call. |
Implements DigitalInput.