MIP_SDK  v3.0.0-187-g93c7302
MicroStrain Communications Library for embedded systems
Public Types | Public Member Functions | Public Attributes | List of all members
mip::commands_3dm::GpioConfig::PinMode Struct Reference

#include <commands_3dm.hpp>

Inheritance diagram for mip::commands_3dm::GpioConfig::PinMode:
mip::Bitfield< PinMode >

Public Types

enum  _enumType : uint8_t {
  NONE = 0x00, OPEN_DRAIN = 0x01, PULLDOWN = 0x02, PULLUP = 0x04,
  ALL = 0x07
}
 
typedef uint8_t Type
 

Public Member Functions

constexpr PinMode ()
 
constexpr PinMode (int val)
 
constexpr operator uint8_t () const
 
constexpr PinModeoperator= (uint8_t val)
 
constexpr PinModeoperator= (int val)
 
constexpr PinModeoperator|= (uint8_t val)
 
constexpr PinModeoperator&= (uint8_t val)
 
constexpr bool openDrain () const
 
constexpr void openDrain (bool val)
 
constexpr bool pulldown () const
 
constexpr void pulldown (bool val)
 
constexpr bool pullup () const
 
constexpr void pullup (bool val)
 
constexpr bool allSet () const
 
constexpr void setAll ()
 

Public Attributes

uint8_t value = NONE
 

Member Typedef Documentation

◆ Type

Member Enumeration Documentation

◆ _enumType

Enumerator
NONE 
OPEN_DRAIN 

The pin will be an open-drain output. The state will be either LOW or FLOATING instead of LOW or HIGH, respectively. This is used to connect multiple open-drain outputs from several devices. An internal or external pull-up resistor is typically used in combination. The maximum voltage of an open drain output is subject to the device maximum input voltage range found in the specifications.

PULLDOWN 

The pin will have an internal pull-down resistor enabled. This is useful for connecting inputs to signals which can only be pulled high such as mechanical switches. Cannot be used in combination with pull-up. See the device specifications for the resistance value.

PULLUP 

The pin will have an internal pull-up resistor enabled. Useful for connecting inputs to signals which can only be pulled low such as mechanical switches, or in combination with an open drain output. Cannot be used in combination with pull-down. See the device specifications for the resistance value. Use of this mode may restrict the maximum allowed input voltage. See the device datasheet for details.

ALL 

Constructor & Destructor Documentation

◆ PinMode() [1/2]

constexpr mip::commands_3dm::GpioConfig::PinMode::PinMode ( )
inlineconstexpr

◆ PinMode() [2/2]

constexpr mip::commands_3dm::GpioConfig::PinMode::PinMode ( int  val)
inlineconstexpr

Member Function Documentation

◆ allSet()

constexpr bool mip::commands_3dm::GpioConfig::PinMode::allSet ( ) const
inlineconstexpr

◆ openDrain() [1/2]

constexpr bool mip::commands_3dm::GpioConfig::PinMode::openDrain ( ) const
inlineconstexpr

◆ openDrain() [2/2]

constexpr void mip::commands_3dm::GpioConfig::PinMode::openDrain ( bool  val)
inlineconstexpr

◆ operator uint8_t()

constexpr mip::commands_3dm::GpioConfig::PinMode::operator uint8_t ( ) const
inlineconstexpr

◆ operator&=()

constexpr PinMode& mip::commands_3dm::GpioConfig::PinMode::operator&= ( uint8_t  val)
inlineconstexpr

◆ operator=() [1/2]

constexpr PinMode& mip::commands_3dm::GpioConfig::PinMode::operator= ( int  val)
inlineconstexpr

◆ operator=() [2/2]

constexpr PinMode& mip::commands_3dm::GpioConfig::PinMode::operator= ( uint8_t  val)
inlineconstexpr

◆ operator|=()

constexpr PinMode& mip::commands_3dm::GpioConfig::PinMode::operator|= ( uint8_t  val)
inlineconstexpr

◆ pulldown() [1/2]

constexpr bool mip::commands_3dm::GpioConfig::PinMode::pulldown ( ) const
inlineconstexpr

◆ pulldown() [2/2]

constexpr void mip::commands_3dm::GpioConfig::PinMode::pulldown ( bool  val)
inlineconstexpr

◆ pullup() [1/2]

constexpr bool mip::commands_3dm::GpioConfig::PinMode::pullup ( ) const
inlineconstexpr

◆ pullup() [2/2]

constexpr void mip::commands_3dm::GpioConfig::PinMode::pullup ( bool  val)
inlineconstexpr

◆ setAll()

constexpr void mip::commands_3dm::GpioConfig::PinMode::setAll ( )
inlineconstexpr

Member Data Documentation

◆ value

uint8_t mip::commands_3dm::GpioConfig::PinMode::value = NONE

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