Open Model Railroad Network (OpenMRN)
Loading...
Searching...
No Matches
GpioOutputPin< Base, SAFE_VALUE, INVERT > Struct Template Reference

Parametric GPIO output class. More...

#include <Esp32Gpio.hxx>

Inheritance diagram for GpioOutputPin< Base, SAFE_VALUE, INVERT >:
GpioShared< Defs >

Static Public Member Functions

static void hw_init ()
 Initializes the hardware pin.
 
static void hw_set_to_safe ()
 Sets the hardware pin to a safe value.
 
static void set (bool value)
 Sets the output pinm.
 
static void hw_init ()
 Initializes the hardware pin.
 
static void hw_set_to_safe ()
 Sets the hardware pin to a safe value.
 
static void toggle ()
 Toggles the state of the pin to the opposite of what it is currently.
 
static void set (bool value)
 Sets the output pin.
 
static constexpr const Gpioinstance ()
 
static void hw_init ()
 Initializes the hardware pin.
 
static void hw_set_to_safe ()
 Sets the hardware pin to a safe value.
 
static void set (bool value)
 Sets the output pinm.
 
static void hw_init ()
 Initializes the hardware pin.
 
static void hw_set_to_safe ()
 Sets the output pin to a safe value.
 
static void hw_init ()
 Initializes the hardware pin.
 
static void hw_set_to_safe ()
 Sets the output pin to a safe value.
 
static void hw_init ()
 Initializes the hardware pin.
 
static void hw_set_to_safe ()
 Sets the output pin to a safe value.
 
static void set (bool value)
 Sets the output pin to a defined value.
 
static bool get ()
 
static void toggle ()
 Changes the value of an output pin.
 
static constexpr const Gpioinstance ()
 
static bool is_output ()
 
static void hw_init ()
 Initializes the hardware pin.
 
static void hw_set_to_safe ()
 Sets the hardware pin to a safe value.
 
static bool is_output ()
 
static void hw_init ()
 Initializes the hardware pin.
 
static void hw_set_to_safe ()
 Sets the hardware pin to a safe value.
 
static void set (bool value)
 Sets the output pinm.
 
static constexpr const Gpioinstance ()
 
- Static Public Member Functions inherited from GpioShared< Defs >
static void unlock ()
 Used to unlock special consideration pins such as JTAG or NMI pins.
 
static void lock ()
 Used to lock special consideration pins such as JTAG or NMI pins.
 
static void set (bool value)
 Sets the output pin to a specified value;.
 
static bool get ()
 
static void toggle ()
 Changes the value of an output pin.
 
static constexpr uint32_t ptr_address ()
 
static constexpr const Gpioinstance ()
 

Detailed Description

template<class Base, bool SAFE_VALUE, bool INVERT = false>
struct GpioOutputPin< Base, SAFE_VALUE, INVERT >

Parametric GPIO output class.

Generic output pin.

Defines a GPIO output pin.

GPIO output pin base class for NXP LPC microcontrollers.

Parameters
Defsis the GPIO pin's definition base class, supplied by the GPIO_PIN macro.
SAFE_VALUEis the initial value for the GPIO output pin.
INVERTinverts the high/low state of the pin when set.

Writes to this structure will change the output level of the pin. Reads will return the pin's current level.

The pin is set to output at initialization time, with the level defined by ‘SAFE_VALUE’.

Do not use this class directly. Use GPIO_PIN instead.

Definition at line 148 of file ArduinoGpio.hxx.

Member Function Documentation

◆ get()

template<class Base , bool SAFE_VALUE, bool INVERT = false>
static bool GpioOutputPin< Base, SAFE_VALUE, INVERT >::get ( )
inlinestatic
Returns
current value of the input pin: if true HIGH.

Definition at line 197 of file CC3200GPIO.hxx.

◆ hw_init() [1/8]

template<class Base , bool SAFE_VALUE, bool INVERT = false>
static void GpioOutputPin< Base, SAFE_VALUE, INVERT >::hw_init ( )
inlinestatic

Initializes the hardware pin.

Definition at line 152 of file ArduinoGpio.hxx.

◆ hw_init() [2/8]

template<class Base , bool SAFE_VALUE, bool INVERT = false>
static void GpioOutputPin< Base, SAFE_VALUE, INVERT >::hw_init ( )
inlinestatic

Initializes the hardware pin.

Definition at line 224 of file Esp32Gpio.hxx.

◆ hw_init() [3/8]

template<class Base , bool SAFE_VALUE, bool INVERT = false>
static void GpioOutputPin< Base, SAFE_VALUE, INVERT >::hw_init ( )
inlinestatic

Initializes the hardware pin.

Definition at line 216 of file Esp8266Gpio.hxx.

◆ hw_init() [4/8]

template<class Base , bool SAFE_VALUE, bool INVERT = false>
static void GpioOutputPin< Base, SAFE_VALUE, INVERT >::hw_init ( )
inlinestatic

Initializes the hardware pin.

Definition at line 112 of file Lpc17xx40xxGPIO.hxx.

◆ hw_init() [5/8]

template<class Base , bool SAFE_VALUE, bool INVERT = false>
static void GpioOutputPin< Base, SAFE_VALUE, INVERT >::hw_init ( )
inlinestatic

Initializes the hardware pin.

Definition at line 121 of file Stm32Gpio.hxx.

◆ hw_init() [6/8]

template<class Base , bool SAFE_VALUE, bool INVERT = false>
static void GpioOutputPin< Base, SAFE_VALUE, INVERT >::hw_init ( )
inlinestatic

Initializes the hardware pin.

Definition at line 175 of file CC3200GPIO.hxx.

◆ hw_init() [7/8]

template<class Base , bool SAFE_VALUE, bool INVERT = false>
static void GpioOutputPin< Base, SAFE_VALUE, INVERT >::hw_init ( )
inlinestatic

Initializes the hardware pin.

Definition at line 225 of file TivaGPIO.hxx.

◆ hw_init() [8/8]

template<class Base , bool SAFE_VALUE, bool INVERT = false>
static void GpioOutputPin< Base, SAFE_VALUE, INVERT >::hw_init ( )
inlinestatic

Initializes the hardware pin.

Definition at line 193 of file LinuxGpio.hxx.

◆ hw_set_to_safe() [1/8]

template<class Base , bool SAFE_VALUE, bool INVERT = false>
static void GpioOutputPin< Base, SAFE_VALUE, INVERT >::hw_set_to_safe ( )
inlinestatic

Sets the hardware pin to a safe value.

Definition at line 159 of file ArduinoGpio.hxx.

◆ hw_set_to_safe() [2/8]

template<class Base , bool SAFE_VALUE, bool INVERT = false>
static void GpioOutputPin< Base, SAFE_VALUE, INVERT >::hw_set_to_safe ( )
inlinestatic

Sets the hardware pin to a safe value.

Definition at line 241 of file Esp32Gpio.hxx.

◆ hw_set_to_safe() [3/8]

template<class Base , bool SAFE_VALUE, bool INVERT = false>
static void GpioOutputPin< Base, SAFE_VALUE, INVERT >::hw_set_to_safe ( )
inlinestatic

Sets the hardware pin to a safe value.

Definition at line 224 of file Esp8266Gpio.hxx.

◆ hw_set_to_safe() [4/8]

template<class Base , bool SAFE_VALUE, bool INVERT = false>
static void GpioOutputPin< Base, SAFE_VALUE, INVERT >::hw_set_to_safe ( )
inlinestatic

Sets the output pin to a safe value.

Definition at line 121 of file Lpc17xx40xxGPIO.hxx.

◆ hw_set_to_safe() [5/8]

template<class Base , bool SAFE_VALUE, bool INVERT = false>
static void GpioOutputPin< Base, SAFE_VALUE, INVERT >::hw_set_to_safe ( )
inlinestatic

Sets the output pin to a safe value.

Definition at line 132 of file Stm32Gpio.hxx.

◆ hw_set_to_safe() [6/8]

template<class Base , bool SAFE_VALUE, bool INVERT = false>
static void GpioOutputPin< Base, SAFE_VALUE, INVERT >::hw_set_to_safe ( )
inlinestatic

Sets the output pin to a safe value.

Definition at line 182 of file CC3200GPIO.hxx.

◆ hw_set_to_safe() [7/8]

template<class Base , bool SAFE_VALUE, bool INVERT = false>
static void GpioOutputPin< Base, SAFE_VALUE, INVERT >::hw_set_to_safe ( )
inlinestatic

Sets the hardware pin to a safe value.

Definition at line 232 of file TivaGPIO.hxx.

◆ hw_set_to_safe() [8/8]

template<class Base , bool SAFE_VALUE, bool INVERT = false>
static void GpioOutputPin< Base, SAFE_VALUE, INVERT >::hw_set_to_safe ( )
inlinestatic

Sets the hardware pin to a safe value.

Definition at line 200 of file LinuxGpio.hxx.

◆ instance() [1/3]

template<class Base , bool SAFE_VALUE, bool INVERT = false>
static constexpr const Gpio * GpioOutputPin< Base, SAFE_VALUE, INVERT >::instance ( )
inlinestaticconstexpr
Returns
static Gpio object instance that controls this output pin.

Definition at line 260 of file Esp32Gpio.hxx.

◆ instance() [2/3]

template<class Base , bool SAFE_VALUE, bool INVERT = false>
static constexpr const Gpio * GpioOutputPin< Base, SAFE_VALUE, INVERT >::instance ( )
inlinestaticconstexpr
Returns
static Gpio ovject instance that controls this output pin.

Definition at line 210 of file CC3200GPIO.hxx.

◆ instance() [3/3]

template<class Base , bool SAFE_VALUE, bool INVERT = false>
static constexpr const Gpio * GpioOutputPin< Base, SAFE_VALUE, INVERT >::instance ( )
inlinestaticconstexpr
Returns
the static Gpio instance.

Definition at line 218 of file LinuxGpio.hxx.

◆ is_output() [1/2]

template<class Base , bool SAFE_VALUE, bool INVERT = false>
static bool GpioOutputPin< Base, SAFE_VALUE, INVERT >::is_output ( )
inlinestatic
Returns
true if this pin is an output pin.

Definition at line 216 of file CC3200GPIO.hxx.

◆ is_output() [2/2]

template<class Base , bool SAFE_VALUE, bool INVERT = false>
static bool GpioOutputPin< Base, SAFE_VALUE, INVERT >::is_output ( )
inlinestatic
Returns
true if this pin is an output pin.

Definition at line 238 of file TivaGPIO.hxx.

◆ set() [1/5]

template<class Base , bool SAFE_VALUE, bool INVERT = false>
static void GpioOutputPin< Base, SAFE_VALUE, INVERT >::set ( bool  value)
inlinestatic

Sets the output pinm.

Parameters
valueif true, output is set to HIGH, if false, output is set to LOW.

Definition at line 165 of file ArduinoGpio.hxx.

◆ set() [2/5]

template<class Base , bool SAFE_VALUE, bool INVERT = false>
static void GpioOutputPin< Base, SAFE_VALUE, INVERT >::set ( bool  value)
inlinestatic

Sets the output pin.

Parameters
valueif true, output is set to HIGH, if false, output is set to LOW.

Definition at line 254 of file Esp32Gpio.hxx.

◆ set() [3/5]

template<class Base , bool SAFE_VALUE, bool INVERT = false>
static void GpioOutputPin< Base, SAFE_VALUE, INVERT >::set ( bool  value)
inlinestatic

Sets the output pinm.

Parameters
valueif true, output is set to HIGH, if false, output is set to LOW.

Definition at line 230 of file Esp8266Gpio.hxx.

◆ set() [4/5]

template<class Base , bool SAFE_VALUE, bool INVERT = false>
static void GpioOutputPin< Base, SAFE_VALUE, INVERT >::set ( bool  value)
inlinestatic

Sets the output pin to a defined value.

Parameters
valueif true, output will be set to HIGH, otherwise to LOW.

See note at the top of the file about barriers.

Definition at line 188 of file CC3200GPIO.hxx.

◆ set() [5/5]

template<class Base , bool SAFE_VALUE, bool INVERT = false>
static void GpioOutputPin< Base, SAFE_VALUE, INVERT >::set ( bool  value)
inlinestatic

Sets the output pinm.

Parameters
valueif true, output is set to HIGH, if false, output is set to LOW.

Definition at line 206 of file LinuxGpio.hxx.

◆ toggle() [1/2]

template<class Base , bool SAFE_VALUE, bool INVERT = false>
static void GpioOutputPin< Base, SAFE_VALUE, INVERT >::toggle ( )
inlinestatic

Toggles the state of the pin to the opposite of what it is currently.

Definition at line 247 of file Esp32Gpio.hxx.

◆ toggle() [2/2]

template<class Base , bool SAFE_VALUE, bool INVERT = false>
static void GpioOutputPin< Base, SAFE_VALUE, INVERT >::toggle ( )
inlinestatic

Changes the value of an output pin.

Definition at line 204 of file CC3200GPIO.hxx.


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