Public Member Functions | |
| ShiftRegisterIoAbstraction165In (pinid_t readClockPin, pinid_t readDataPin, pinid_t readLatchPin, pinid_t numRead) | |
| ShiftRegisterIoAbstraction165In (ShiftRegConfig config) | |
| void | initDevice () |
| void | pinDirection (pinid_t pin, uint8_t mode) override |
| uint8_t | readValue (pinid_t pin) override |
| bool | runLoop () override |
| uint8_t | readPort (pinid_t port) override |
| void | writePort (pinid_t port, uint8_t portVal) override |
| void | writeValue (pinid_t pin, uint8_t value) override |
| void | attachInterrupt (pinid_t, RawIntHandler, uint8_t) override |
| uint8_t | shiftInFor165 () const |
| Public Member Functions inherited from BasicIoAbstraction | |
| uint8_t | digitalRead (pinid_t p) |
| void | digitalWrite (pinid_t p, uint8_t v) |
| uint8_t | digitalReadS (pinid_t p) |
| void | digitalWriteS (pinid_t p, uint8_t v) |
| void | writePortS (pinid_t p, uint8_t v) |
| uint8_t | readPortS (pinid_t p) |
| void | pinMode (pinid_t pin, uint8_t mode) |
| bool | sync () |
| ShiftRegisterIoAbstraction165In::ShiftRegisterIoAbstraction165In | ( | pinid_t | readClockPin, |
| pinid_t | readDataPin, | ||
| pinid_t | readLatchPin, | ||
| pinid_t | numRead ) |
Normally use the shift register helper functions to create an instance.
|
inlineoverridevirtual |
Input only abstraction, does nothing because only input is supported
Reimplemented from BasicIoAbstraction.
|
overridevirtual |
Reads a value from a pin for this abstraction as per digitalRead. For serial devices may need a sync first.
| pin | the pin to be read |
Reimplemented from BasicIoAbstraction.
|
overridevirtual |
This method is not needed on Arduino pins, but for most serial implementations it causes the device and abstraction to be synced. Returns true if the write call worked, normally true, false indicates error
Reimplemented from BasicIoAbstraction.
|
overridevirtual |
Reads a whole port at once, on Arduino pins this is achieved by providing any pin within that port. On Arduino pins you should take care not to use ports that are providing core functions.
| pin | the pin determines the hardware port to use. |
Reimplemented from BasicIoAbstraction.
|
inlineoverridevirtual |
Writes out a whole port at once, on Arduino pins this is achieved by providing any pin within that port. On Arduino pins you should take care not to use ports that are providing core functions.
| pin | the pin determines the hardware port to use. |
| portVal | the 8 bit value to write to the port. Use with care. |
Reimplemented from BasicIoAbstraction.
|
inlineoverridevirtual |
Writes a value to a pin on this abstraction, as per digitalWrite. For serial devices, may need a sync first.
| pin | the pin to be written to |
| value | the new value such as HIGH / LOW |
Reimplemented from BasicIoAbstraction.
|
inlineoverridevirtual |
Attach an interrupt to this abstraction, regardless of the device location this will perform the required tasks to register the interrupt in the requested mode. Note that not all devices can support all modes, for arduino pins all modes are supported.
| pin | the pin on this device to be used |
| intHandler | a void function with no parameters, used to handle interrupts. THIS IS A RAW INTERRUPT AND NOT MARSHALLED |
| mode | standard Arduino interrupt modes: CHANGE, RISING, FALLING |
Reimplemented from BasicIoAbstraction.