supla-device
Loading...
Searching...
No Matches
Supla::Io::MCP23017 Class Reference
Inheritance diagram for Supla::Io::MCP23017:
Collaboration diagram for Supla::Io::MCP23017:

Public Member Functions

 MCP23017 (uint8_t address=0x20, TwoWire *wire=&Wire, bool pullUp=false)
 
void onInit ()
 Third method called on element in SuplaDevice.begin()
 
void customPinMode (int channelNumber, uint8_t pin, uint8_t mode) override
 
void customDigitalWrite (int channelNumber, uint8_t pin, uint8_t val) override
 
int customDigitalRead (int channelNumber, uint8_t pin) override
 
unsigned int customPulseIn (int channelNumber, uint8_t pin, uint8_t value, uint64_t timeoutMicro) override
 
void customAnalogWrite (int channelNumber, uint8_t pin, int val) override
 
int customAnalogRead (int channelNumber, uint8_t pin) override
 
void onTimer () override
 Method called on timer interupt.
 
void read16FromMCP ()
 
- Public Member Functions inherited from Supla::Io::Base
 Base (bool useAsSingleton=true)
 
virtual void customAttachInterrupt (uint8_t pin, void(*func)(void), int mode)
 
virtual void customDetachInterrupt (uint8_t pin)
 
virtual uint8_t customPinToInterrupt (uint8_t pin)
 

Protected Attributes

::MCP23017 mcp_
 
uint16_t gpioState_ = 0
 

Additional Inherited Members

- Static Public Attributes inherited from Supla::Io::Base
static BaseioInstance = nullptr
 

Member Function Documentation

◆ customAnalogRead()

int Supla::Io::MCP23017::customAnalogRead ( int channelNumber,
uint8_t pin )
inlineoverridevirtual

Reimplemented from Supla::Io::Base.

◆ customAnalogWrite()

void Supla::Io::MCP23017::customAnalogWrite ( int channelNumber,
uint8_t pin,
int val )
inlineoverridevirtual

Reimplemented from Supla::Io::Base.

◆ customDigitalRead()

int Supla::Io::MCP23017::customDigitalRead ( int channelNumber,
uint8_t pin )
inlineoverridevirtual

Reimplemented from Supla::Io::Base.

◆ customDigitalWrite()

void Supla::Io::MCP23017::customDigitalWrite ( int channelNumber,
uint8_t pin,
uint8_t val )
inlineoverridevirtual

Reimplemented from Supla::Io::Base.

◆ customPinMode()

void Supla::Io::MCP23017::customPinMode ( int channelNumber,
uint8_t pin,
uint8_t mode )
inlineoverridevirtual

Reimplemented from Supla::Io::Base.

◆ customPulseIn()

unsigned int Supla::Io::MCP23017::customPulseIn ( int channelNumber,
uint8_t pin,
uint8_t value,
uint64_t timeoutMicro )
inlineoverridevirtual

Reimplemented from Supla::Io::Base.

◆ onInit()

void Supla::Io::MCP23017::onInit ( )
inlinevirtual

Third method called on element in SuplaDevice.begin()

Method called during SuplaDevice initialization. I.e. load initial state, initialize pins etc.

Reimplemented from Supla::Element.

◆ onTimer()

void Supla::Io::MCP23017::onTimer ( )
inlineoverridevirtual

Method called on timer interupt.

It should provide all actions that have to be executed periodically regardless of other SuplaDevice activities. It is usually called every 10 ms.

Reimplemented from Supla::Element.


The documentation for this class was generated from the following file: