modm API documentation
General Purpose I/O (GPIO)

Classes

class  modm::platform::GpioInverted< Pin >
 
class  modm::platform::GpioUnused
 
class  modm::platform::SoftwareGpioPort< Gpios >
 
typedef uint32_t modm::platform::Instance
 
using modm::platform::GpioA00 = Gpio< gpio::A00 >
 
using modm::platform::GpioA01 = Gpio< gpio::A01 >
 
using modm::platform::GpioA02 = Gpio< gpio::A02 >
 
using modm::platform::GpioA03 = Gpio< gpio::A03 >
 
using modm::platform::GpioA04 = Gpio< gpio::A04 >
 
using modm::platform::GpioA05 = Gpio< gpio::A05 >
 
using modm::platform::GpioA06 = Gpio< gpio::A06 >
 
using modm::platform::GpioA07 = Gpio< gpio::A07 >
 
using modm::platform::GpioA08 = Gpio< gpio::A08 >
 
using modm::platform::GpioA09 = Gpio< gpio::A09 >
 
using modm::platform::GpioA10 = Gpio< gpio::A10 >
 
using modm::platform::GpioA11 = Gpio< gpio::A11 >
 
using modm::platform::GpioA12 = Gpio< gpio::A12 >
 
using modm::platform::GpioA13 = Gpio< gpio::A13 >
 
using modm::platform::GpioA14 = Gpio< gpio::A14 >
 
using modm::platform::GpioA15 = Gpio< gpio::A15 >
 
using modm::platform::GpioA16 = Gpio< gpio::A16 >
 
using modm::platform::GpioA17 = Gpio< gpio::A17 >
 
using modm::platform::GpioA18 = Gpio< gpio::A18 >
 
using modm::platform::GpioA19 = Gpio< gpio::A19 >
 
using modm::platform::GpioA20 = Gpio< gpio::A20 >
 
using modm::platform::GpioA21 = Gpio< gpio::A21 >
 
using modm::platform::GpioA22 = Gpio< gpio::A22 >
 
using modm::platform::GpioA23 = Gpio< gpio::A23 >
 
using modm::platform::GpioA24 = Gpio< gpio::A24 >
 
using modm::platform::GpioA25 = Gpio< gpio::A25 >
 
using modm::platform::GpioA27 = Gpio< gpio::A27 >
 
using modm::platform::GpioA28 = Gpio< gpio::A28 >
 
using modm::platform::GpioA30 = Gpio< gpio::A30 >
 
using modm::platform::GpioA31 = Gpio< gpio::A31 >
 
using modm::platform::GpioB02 = Gpio< gpio::B02 >
 
using modm::platform::GpioB03 = Gpio< gpio::B03 >
 
using modm::platform::GpioB04 = Gpio< gpio::B04 >
 
using modm::platform::GpioB08 = Gpio< gpio::B08 >
 
using modm::platform::GpioB09 = Gpio< gpio::B09 >
 
enum  modm::platform::InputType { modm::platform::InputType::Floating = 0x0, modm::platform::InputType::PullUp = 0x1, modm::platform::InputType::PullDown = 0x2 }
 
enum  PeripheralPin {
  BitBang, Rx, Tx, Rts,
  Cts, ExtInt, Dm, Dp,
  Wo, Sck, Miso, Mosi,
  Npcs, Spck, Ad, Adtrg,
  Wkup, Tioa, Tiob, Tclk,
  Twd, Twck, Pck, I2sck,
  I2sws, I2sdi, I2sdo, I2smck,
  PwmH0, PwmH1, PwmH2, PwmH3,
  PwmL0, PwmL1, PwmL2, PwmL3,
  PwmFi0, PwmFi1, PwmFi2, PwmExtrg0,
  PwmExtrg1, Ch0, Ch1, Datrg
}
 
template<typename... Tuples>
using modm::platform::tuple_cat_t = decltype (std::tuple_cat (std::declval< Tuples >()...))
 
template<class Predicate , class Tuple >
using modm::platform::tuple_filter_t = typename tuple_filter< Predicate, Tuple >::type
 
template<PeripheralPin peripheral_pin, class... Pins>
using modm::platform::GetPin_t = typename GetPin< peripheral_pin, Pins... >::type
 
template<typename T >
constexpr bool modm::platform::is_inverted_v = is_inverted<T>::value
 
template<typename T >
 modm::platform::requires (T::isInverted==true) struct is_inverted< T >
 

Detailed Description

lbuild module: modm:platform:gpio

Module Options

modm:platform:gpio:enable_ports: Enable clock for these GPIO ports during startup

Generated with: {A, B} in [A, B]

Enumeration Type Documentation

Enum ValuesDocumentation
Floating 

floating on input

PullUp 

pull-up on input

PullDown 

pull-down on input