SensESP 2.7.2
Universal Signal K sensor toolkit ESP32
Loading...
Searching...
No Matches
sensesp::DigitalInputChange Class Reference

DigitalInputChange provides output whenever a digital pin changes its state. More...

#include <sensesp/sensors/digital_input.h>

Inheritance diagram for sensesp::DigitalInputChange:
[legend]

Public Member Functions

 DigitalInputChange (uint8_t pin, int pin_mode, int interrupt_type, String config_path="")
 
virtual void start () override final
 
- Public Member Functions inherited from sensesp::DigitalInput
 DigitalInput (uint8_t pin, int pin_mode)
 
- Public Member Functions inherited from sensesp::SensorT< bool >
 SensorT (String config_path="")
 
- Public Member Functions inherited from sensesp::Sensor
 Sensor (String config_path="")
 
- Public Member Functions inherited from sensesp::Observable
 Observable ()
 
 Observable (Observable &&other)
 Move constructor.
 
void notify ()
 
void attach (std::function< void()> observer)
 
- Public Member Functions inherited from sensesp::Configurable
 Configurable (String config_path="", String description="", int sort_order=1000)
 
virtual String get_config_schema ()
 
String get_description ()
 
void set_description (String description)
 Set the description of the Configurable.
 
int get_sort_order ()
 
void set_sort_order (int sort_order)
 
virtual void save_configuration ()
 
- Public Member Functions inherited from sensesp::Startable
 Startable (int priority=0)
 
const int get_start_priority ()
 
void set_start_priority (int priority)
 
- Public Member Functions inherited from sensesp::ValueProducer< T >
 ValueProducer ()
 
virtual const T & get () const
 
void connect_to (ValueConsumer< T > *consumer, uint8_t input_channel=0)
 
template<typename CT >
void connect_to (ValueConsumer< CT > *consumer, uint8_t input_channel=0)
 Connect a producer to a consumer of a different type.
 
template<typename T2 >
Transform< T, T2 > * connect_to (Transform< T, T2 > *consumer_producer, uint8_t input_channel=0)
 
template<typename TT , typename T2 >
Transform< TT, T2 > * connect_to (Transform< TT, T2 > *consumer_producer, uint8_t input_channel=0)
 Connect a producer to a transform with a different input type.
 
void emit (T new_value)
 

Additional Inherited Members

- Static Public Member Functions inherited from sensesp::Sensor
static const std::set< Sensor * > & get_sensors ()
 
- Static Public Member Functions inherited from sensesp::Startable
static void start_all ()
 
- Public Attributes inherited from sensesp::Configurable
const String config_path_
 
- Protected Member Functions inherited from sensesp::Configurable
virtual void load_configuration ()
 
- Protected Attributes inherited from sensesp::DigitalInput
uint8_t pin_
 
- Protected Attributes inherited from sensesp::Configurable
String description_ = ""
 
int sort_order_ = 1000
 
- Protected Attributes inherited from sensesp::ValueProducer< T >
output
 

Detailed Description

DigitalInputChange provides output whenever a digital pin changes its state.

DigitalInputChange is triggered by an interrupt on the pin, so it is guaranteed to catch all state changes on the pin. However, output reporting occurs during the ReactESP event loop, so for extremely fast state changes (with a frequency of at least several tens of kHz), it is possible that the event loop can't keep up and only the latest value is processed.)

Parameters
pinThe GPIO pin to which the device is connected
pin_modeWill be INPUT or INPUT_PULLUP
interrupt_typeWill be RISING, FALLING, or CHANGE
config_pathThe path to configure Sensor parameters, if any
See also
Debounce

Definition at line 192 of file digital_input.h.

Constructor & Destructor Documentation

◆ DigitalInputChange()

sensesp::DigitalInputChange::DigitalInputChange ( uint8_t  pin,
int  pin_mode,
int  interrupt_type,
String  config_path = "" 
)
inline

Definition at line 194 of file digital_input.h.

Here is the call graph for this function:

Member Function Documentation

◆ start()

void sensesp::DigitalInputChange::start ( )
finaloverridevirtual

Called during the initialization process. Override this method to add runtime initialization code to your class

Reimplemented from sensesp::Startable.

Definition at line 99 of file digital_input.cpp.

Here is the call graph for this function:

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