DigitalHooks Class Reference

Class to customise behaviour for digital functions. More...

#include <DigitalHooks.h>

Public Member Functions

virtual void badPin (const char *function, uint16_t pin)
 Report invalid pin number. More...
 
virtual bool pinMode (uint16_t pin, uint8_t mode)
 Set pin mode. More...
 
virtual void digitalWrite (uint16_t pin, uint8_t val)
 Change pin output. More...
 
virtual uint8_t digitalRead (uint16_t pin, uint8_t mode)
 Read pin state. More...
 
virtual void pullup (uint16_t pin, bool enable)
 Set or clear pullup state for a pin. More...
 
virtual unsigned long pulseIn (uint16_t pin, uint8_t state, unsigned long timeout)
 Measure duration of pulse on GPIO. More...
 

Detailed Description

Class to customise behaviour for digital functions.

Note
By default, actions get output to console but this can get very busy. The easiest way to change the behaviour is by sub-classing DigitalHooks and passing the new class instance to setDigitalHooks().

Member Function Documentation

◆ badPin()

virtual void DigitalHooks::badPin ( const char *  function,
uint16_t  pin 
)
virtual

Report invalid pin number.

Parameters
functionName of function which was called
pinThe pin number

◆ digitalRead()

virtual uint8_t DigitalHooks::digitalRead ( uint16_t  pin,
uint8_t  mode 
)
virtual

Read pin state.

Parameters
pinHas already been range checked
modeThe currently set mode for this pin
valState for pin

◆ digitalWrite()

virtual void DigitalHooks::digitalWrite ( uint16_t  pin,
uint8_t  val 
)
virtual

Change pin output.

Parameters
pinHas already been range checked
valNew pin value

◆ pinMode()

virtual bool DigitalHooks::pinMode ( uint16_t  pin,
uint8_t  mode 
)
virtual

Set pin mode.

Parameters
pinHas already been range checked
mode
Return values
trueif mode can be set for this pin, will be stored

◆ pullup()

virtual void DigitalHooks::pullup ( uint16_t  pin,
bool  enable 
)
virtual

Set or clear pullup state for a pin.

Parameters
pinHas already been range checked
enabletrue for pullup, false for no pullup

◆ pulseIn()

virtual unsigned long DigitalHooks::pulseIn ( uint16_t  pin,
uint8_t  state,
unsigned long  timeout 
)
virtual

Measure duration of pulse on GPIO.

Parameters
pinGPIO to measure
stateState of pulse to measure [HIGH | LOW]
timeoutMaximum duration of pulse
Return values
unsignedlong Pulse duration in microseconds

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