|  | 
| typedef modm::Flags16< Pin > | Pins | 
|  | 
| using | PortType = uint16_t | 
|  | 
| template<Mcp23x17< Transport > & object, Pin StartPin, uint8_t Width, GpioPort::DataOrder DataOrder = GpioPort::DataOrder::Normal> | 
| using | Port = GpioExpanderPort< Mcp23x17< Transport >, object, StartPin, Width, DataOrder > | 
|  | Alias-templates for simpler use of the Port. 
 | 
|  | 
|  | 
| template<Mcp23x17< Transport > & object> | 
| using | A0 = GpioExpanderPin< Mcp23x17< Transport >, object, Pin::A0 > | 
|  | 
| template<Mcp23x17< Transport > & object> | 
| using | A1 = GpioExpanderPin< Mcp23x17< Transport >, object, Pin::A1 > | 
|  | 
| template<Mcp23x17< Transport > & object> | 
| using | A2 = GpioExpanderPin< Mcp23x17< Transport >, object, Pin::A2 > | 
|  | 
| template<Mcp23x17< Transport > & object> | 
| using | A3 = GpioExpanderPin< Mcp23x17< Transport >, object, Pin::A3 > | 
|  | 
| template<Mcp23x17< Transport > & object> | 
| using | A4 = GpioExpanderPin< Mcp23x17< Transport >, object, Pin::A4 > | 
|  | 
| template<Mcp23x17< Transport > & object> | 
| using | A5 = GpioExpanderPin< Mcp23x17< Transport >, object, Pin::A5 > | 
|  | 
| template<Mcp23x17< Transport > & object> | 
| using | A6 = GpioExpanderPin< Mcp23x17< Transport >, object, Pin::A6 > | 
|  | 
| template<Mcp23x17< Transport > & object> | 
| using | A7 = GpioExpanderPin< Mcp23x17< Transport >, object, Pin::A7 > | 
|  | 
| template<Mcp23x17< Transport > & object> | 
| using | B0 = GpioExpanderPin< Mcp23x17< Transport >, object, Pin::B0 > | 
|  | 
| template<Mcp23x17< Transport > & object> | 
| using | B1 = GpioExpanderPin< Mcp23x17< Transport >, object, Pin::B1 > | 
|  | 
| template<Mcp23x17< Transport > & object> | 
| using | B2 = GpioExpanderPin< Mcp23x17< Transport >, object, Pin::B2 > | 
|  | 
| template<Mcp23x17< Transport > & object> | 
| using | B3 = GpioExpanderPin< Mcp23x17< Transport >, object, Pin::B3 > | 
|  | 
| template<Mcp23x17< Transport > & object> | 
| using | B4 = GpioExpanderPin< Mcp23x17< Transport >, object, Pin::B4 > | 
|  | 
| template<Mcp23x17< Transport > & object> | 
| using | B5 = GpioExpanderPin< Mcp23x17< Transport >, object, Pin::B5 > | 
|  | 
| template<Mcp23x17< Transport > & object> | 
| using | B6 = GpioExpanderPin< Mcp23x17< Transport >, object, Pin::B6 > | 
|  | 
| template<Mcp23x17< Transport > & object> | 
| using | B7 = GpioExpanderPin< Mcp23x17< Transport >, object, Pin::B7 > | 
|  | 
|  | 
|  | Mcp23x17 (uint8_t address=0x20) | 
|  | Constructor, sets address to default of 0x20 (range 0x20 - 0x27) 
 | 
|  | 
| bool | initialize () | 
|  | 
| bool | setOutput (Pins pins) | 
|  | 
| bool | set (Pins pins) | 
|  | 
| bool | reset (Pins pins) | 
|  | 
| bool | toggle (Pins pins) | 
|  | 
| bool | set (Pins pins, bool value) | 
|  | 
| bool | isSet (Pin pin) | 
|  | 
| modm::Gpio::Direction | getDirection (Pin pin) | 
|  | 
| bool | setInput (Pins pins) | 
|  | 
| bool | setPullUp (Pins pins) | 
|  | 
| bool | resetPullUp (Pins pins) | 
|  | 
| bool | setInvertInput (Pins pins) | 
|  | 
| bool | resetInvertInput (Pins pins) | 
|  | 
| bool | read (Pin pin) | 
|  | 
| bool | readInput () | 
|  | 
| bool | readAllInput () | 
|  | 
| bool | writePort (PortType data) | 
|  | 
| bool | readPort (PortType &data) | 
|  | 
| Pins | getDirections () | 
|  | 
| Pins | getOutputs () | 
|  | 
| Pins | getInputs () | 
|  | 
| Pins | getPolarities () | 
|  | 
| modm::Gpio::Direction | getDirection (Pin pin) const | 
|  | returns direction of one pin at run-time 
 | 
|  | 
| Pins | getDirections () const | 
|  | Returns the direction bits: 0 for Input, 1 for Output. 
 | 
|  | 
| Pins | getInputs () const | 
|  | Returns the input bits: 0 for low, 1 for high. 
 | 
|  | 
| Pins | getOutputs () const | 
|  | Returns the output bits: 0 for low, 1 for high. 
 | 
|  | 
| bool | isSet (Pin pin) const | 
|  | Returns the set logical output state of the pin. 
 | 
|  | 
| bool | read (Pins pins) const | 
|  | 
| bool | readPort (PortType &data) | 
|  | Reads the entire port, buffers them and outputs the result to data. 
 | 
|  | 
| bool | reset (Pins pins) | 
|  | 
| bool | set (Pins pins) | 
|  | 
| bool | set (Pins pins, bool value) | 
|  | 
| bool | setInput (Pins pins) | 
|  | Sets one or more pins to input. 
 | 
|  | 
| bool | setOutput (Pins pins) | 
|  | Sets one or more pins to output. 
 | 
|  | 
| bool | toggle (Pins pins) | 
|  | 
| bool | writePort (PortType data) | 
|  |