Control Surface main
MIDI Control Surface library for Arduino
Loading...
Searching...
No Matches
Classes | Functions
AH::ExtIO Namespace Reference

Detailed Description

A namespace with alternatives to the standard Arduino IO functions that can be used with extended IO pin numbers.

Classes

struct  CachedExtIOPin
 
struct  pin_t
 Type for storing pin numbers of Extended Input/Output elements. More...
 

Functions

template<class T >
static bool inRange (T target, T start, T end)
 
ExtendedIOElementgetIOElementOfPinOrNull (pin_t pin)
 Find the IO element of a given extended IO pin number.
 
ExtendedIOElementgetIOElementOfPin (pin_t pin)
 Find the IO element of a given extended IO pin number.
 
void pinMode (pin_t pin, PinMode_t mode)
 An ExtIO version of the Arduino function.
 
void digitalWrite (pin_t pin, PinStatus_t val)
 An ExtIO version of the Arduino function.
 
PinStatus_t digitalRead (pin_t pin)
 An ExtIO version of the Arduino function.
 
analog_t analogRead (pin_t pin)
 An ExtIO version of the Arduino function.
 
void analogWrite (pin_t pin, analog_t val)
 An ExtIO version of the Arduino function.
 
void analogWrite (pin_t pin, int val)
 An ExtIO version of the Arduino function.
 
void pinModeBuffered (pin_t pin, PinMode_t mode)
 A buffered ExtIO version of the Arduino function.
 
void digitalWriteBuffered (pin_t pin, PinStatus_t val)
 A buffered ExtIO version of the Arduino function.
 
PinStatus_t digitalReadBuffered (pin_t pin)
 A buffered ExtIO version of the Arduino function.
 
analog_t analogReadBuffered (pin_t pin)
 A buffered ExtIO version of the Arduino function.
 
void analogWriteBuffered (pin_t pin, analog_t val)
 A buffered ExtIO version of the Arduino function.
 
void analogWriteBuffered (pin_t pin, int val)
 A buffered ExtIO version of the Arduino function.
 
void shiftOut (pin_t dataPin, pin_t clockPin, BitOrder_t bitOrder, uint8_t val)
 An ExtIO version of the Arduino function.
 
bool isNativePin (pin_t pin)
 Check if the given pin number is a real Arduino pin number, and not an ExtIO pin number.
 
void pinMode (CachedExtIOPin pin, PinMode_t mode)
 An ExtIO version of the Arduino function.
 
void digitalWrite (CachedExtIOPin pin, PinStatus_t val)
 An ExtIO version of the Arduino function.
 
PinStatus_t digitalRead (CachedExtIOPin pin)
 An ExtIO version of the Arduino function.
 
analog_t analogRead (CachedExtIOPin pin)
 An ExtIO version of the Arduino function.
 
void analogWrite (CachedExtIOPin pin, analog_t val)
 An ExtIO version of the Arduino function.
 
void analogWrite (CachedExtIOPin pin, int val)
 An ExtIO version of the Arduino function.
 
void shiftOut (CachedExtIOPin dataPin, CachedExtIOPin clockPin, BitOrder_t bitOrder, uint8_t val)
 An ExtIO version of the Arduino function.
 
void pinModeBuffered (CachedExtIOPin pin, PinMode_t mode)
 A buffered ExtIO version of the Arduino function.
 
void digitalWriteBuffered (CachedExtIOPin pin, PinStatus_t val)
 A buffered ExtIO version of the Arduino function.
 
PinStatus_t digitalReadBuffered (CachedExtIOPin pin)
 A buffered ExtIO version of the Arduino function.
 
analog_t analogReadBuffered (CachedExtIOPin pin)
 A buffered ExtIO version of the Arduino function.
 
void analogWriteBuffered (CachedExtIOPin pin, analog_t val)
 A buffered ExtIO version of the Arduino function.
 
void analogWriteBuffered (CachedExtIOPin pin, int val)
 A buffered ExtIO version of the Arduino function.
 
constexpr bool operator== (pin_t a, pin_t b)
 
constexpr bool operator< (pin_t a, pin_t b)
 
constexpr bool operator<= (pin_t a, pin_t b)
 
constexpr bool operator> (pin_t a, pin_t b)
 
constexpr bool operator>= (pin_t a, pin_t b)
 
constexpr bool operator!= (pin_t a, pin_t b)
 
constexpr pin_int_t operator- (pin_t a, pin_t b)
 
constexpr pin_t operator- (pin_t a, pin_int_t b)
 
constexpr pin_t operator+ (pin_t a, pin_int_t b)
 
constexpr pin_t operator+ (pin_int_t a, pin_t b)
 
constexpr pin_t operator* (pin_t a, pin_int_t b)
 
constexpr pin_t operator* (pin_int_t a, pin_t b)
 
Print & operator<< (Print &os, pin_t p)
 

Function Documentation

◆ inRange()

template<class T >
static bool inRange ( T target,
T start,
T end )
static

Definition at line 10 of file ExtendedInputOutput.cpp.

◆ pinMode()

void pinMode ( CachedExtIOPin pin,
PinMode_t mode )
inline

An ExtIO version of the Arduino function.

See also
ExtendedIOElement::pinMode

Definition at line 296 of file ExtendedIOElement.hpp.

◆ digitalWrite()

void digitalWrite ( CachedExtIOPin pin,
PinStatus_t val )
inline

An ExtIO version of the Arduino function.

See also
ExtendedIOElement::digitalWrite

Definition at line 303 of file ExtendedIOElement.hpp.

◆ digitalRead()

PinStatus_t digitalRead ( CachedExtIOPin pin)
inline

An ExtIO version of the Arduino function.

See also
ExtendedIOElement::digitalRead

Definition at line 310 of file ExtendedIOElement.hpp.

◆ analogRead()

analog_t analogRead ( CachedExtIOPin pin)
inline

An ExtIO version of the Arduino function.

See also
ExtendedIOElement::analogRead

Definition at line 317 of file ExtendedIOElement.hpp.

◆ analogWrite() [1/2]

void analogWrite ( CachedExtIOPin pin,
analog_t val )
inline

An ExtIO version of the Arduino function.

See also
ExtendedIOElement::analogWrite

Definition at line 323 of file ExtendedIOElement.hpp.

◆ analogWrite() [2/2]

void analogWrite ( CachedExtIOPin pin,
int val )
inline

An ExtIO version of the Arduino function.

See also
ExtendedIOElement::analogWrite

Definition at line 336 of file ExtendedIOElement.hpp.

◆ shiftOut()

void shiftOut ( CachedExtIOPin dataPin,
CachedExtIOPin clockPin,
BitOrder_t bitOrder,
uint8_t val )
inline

An ExtIO version of the Arduino function.

Definition at line 341 of file ExtendedIOElement.hpp.

◆ pinModeBuffered()

void pinModeBuffered ( CachedExtIOPin pin,
PinMode_t mode )
inline

A buffered ExtIO version of the Arduino function.

See also
ExtendedIOElement::pinModeBuffered

Definition at line 376 of file ExtendedIOElement.hpp.

◆ digitalWriteBuffered()

void digitalWriteBuffered ( CachedExtIOPin pin,
PinStatus_t val )
inline

A buffered ExtIO version of the Arduino function.

See also
ExtendedIOElement::digitalWriteBuffered

Definition at line 383 of file ExtendedIOElement.hpp.

◆ digitalReadBuffered()

PinStatus_t digitalReadBuffered ( CachedExtIOPin pin)
inline

A buffered ExtIO version of the Arduino function.

See also
ExtendedIOElement::digitalReadBuffered

Definition at line 390 of file ExtendedIOElement.hpp.

◆ analogReadBuffered()

analog_t analogReadBuffered ( CachedExtIOPin pin)
inline

A buffered ExtIO version of the Arduino function.

See also
ExtendedIOElement::analogReadBuffered

Definition at line 397 of file ExtendedIOElement.hpp.

◆ analogWriteBuffered() [1/2]

void analogWriteBuffered ( CachedExtIOPin pin,
analog_t val )
inline

A buffered ExtIO version of the Arduino function.

See also
ExtendedIOElement::analogWriteBuffered

Definition at line 403 of file ExtendedIOElement.hpp.

◆ analogWriteBuffered() [2/2]

void analogWriteBuffered ( CachedExtIOPin pin,
int val )
inline

A buffered ExtIO version of the Arduino function.

See also
ExtendedIOElement::analogWriteBuffered

Definition at line 416 of file ExtendedIOElement.hpp.

◆ operator==()

constexpr bool operator== ( pin_t a,
pin_t b )
inlineconstexpr

Definition at line 65 of file Hardware-Types.hpp.

◆ operator<()

constexpr bool operator< ( pin_t a,
pin_t b )
inlineconstexpr

Definition at line 66 of file Hardware-Types.hpp.

◆ operator<=()

constexpr bool operator<= ( pin_t a,
pin_t b )
inlineconstexpr

Definition at line 67 of file Hardware-Types.hpp.

◆ operator>()

constexpr bool operator> ( pin_t a,
pin_t b )
inlineconstexpr

Definition at line 68 of file Hardware-Types.hpp.

◆ operator>=()

constexpr bool operator>= ( pin_t a,
pin_t b )
inlineconstexpr

Definition at line 69 of file Hardware-Types.hpp.

◆ operator!=()

constexpr bool operator!= ( pin_t a,
pin_t b )
inlineconstexpr

Definition at line 70 of file Hardware-Types.hpp.

◆ operator-() [1/2]

constexpr pin_int_t operator- ( pin_t a,
pin_t b )
inlineconstexpr

Definition at line 71 of file Hardware-Types.hpp.

◆ operator-() [2/2]

constexpr pin_t operator- ( pin_t a,
pin_int_t b )
inlineconstexpr

Definition at line 72 of file Hardware-Types.hpp.

◆ operator+() [1/2]

constexpr pin_t operator+ ( pin_t a,
pin_int_t b )
inlineconstexpr

Definition at line 73 of file Hardware-Types.hpp.

◆ operator+() [2/2]

constexpr pin_t operator+ ( pin_int_t a,
pin_t b )
inlineconstexpr

Definition at line 74 of file Hardware-Types.hpp.

◆ operator*() [1/2]

constexpr pin_t operator* ( pin_t a,
pin_int_t b )
inlineconstexpr

Definition at line 75 of file Hardware-Types.hpp.

◆ operator*() [2/2]

constexpr pin_t operator* ( pin_int_t a,
pin_t b )
inlineconstexpr

Definition at line 76 of file Hardware-Types.hpp.

◆ operator<<()

Print & operator<< ( Print & os,
pin_t p )
inline

Definition at line 77 of file Hardware-Types.hpp.