Struct grand_central_m4::gpio::Pin[][src]

pub struct Pin<I, M> where
    M: PinMode,
    I: PinId
{ /* fields omitted */ }
👎 Deprecated since 0.13.0:

The gpio::v1 module is deprecated, and will be removed in a subsequent release. Please use the gpio::v2 module instead.

Expand description

Represents a GPIO pin with a corresponding PinId and PinMode

The v2::Pin type provides many of the same inherent functions, but it does so without requiring the PORT as an argument, breaking backwards compatibility.

v1 Pin type is a newtype wrapper for v2::Pins. To aid in compatibility, the v1 Pin types also implement AnyPin. From & Into conversions are provided between the two pin types.

Implementations

👎 Deprecated since 0.13.0:

The gpio::v1 module is deprecated, and will be removed in a subsequent release. Please use the gpio::v2 module instead.

👎 Deprecated since 0.13.0:

The gpio::v1 module is deprecated, and will be removed in a subsequent release. Please use the gpio::v2 module instead.

Configures the pin to operate as a floating input

👎 Deprecated since 0.13.0:

The gpio::v1 module is deprecated, and will be removed in a subsequent release. Please use the gpio::v2 module instead.

Configures the pin to operate as a pulled down input pin

👎 Deprecated since 0.13.0:

The gpio::v1 module is deprecated, and will be removed in a subsequent release. Please use the gpio::v2 module instead.

Configures the pin to operate as a pulled up input pin

👎 Deprecated since 0.13.0:

The gpio::v1 module is deprecated, and will be removed in a subsequent release. Please use the gpio::v2 module instead.

Configures the pin to operate as a floating interrupt

👎 Deprecated since 0.13.0:

The gpio::v1 module is deprecated, and will be removed in a subsequent release. Please use the gpio::v2 module instead.

Configures the pin to operate as a pulled down interrupt pin

👎 Deprecated since 0.13.0:

The gpio::v1 module is deprecated, and will be removed in a subsequent release. Please use the gpio::v2 module instead.

Configures the pin to operate as a pulled up interrupt pin

👎 Deprecated since 0.13.0:

The gpio::v1 module is deprecated, and will be removed in a subsequent release. Please use the gpio::v2 module instead.

Configures the pin to operate as an open drain output

👎 Deprecated since 0.13.0:

The gpio::v1 module is deprecated, and will be removed in a subsequent release. Please use the gpio::v2 module instead.

Configures the pin to operate as an open drain output which can be read

👎 Deprecated since 0.13.0:

The gpio::v1 module is deprecated, and will be removed in a subsequent release. Please use the gpio::v2 module instead.

Configures the pin to operate as a push-pull output

👎 Deprecated since 0.13.0:

The gpio::v1 module is deprecated, and will be removed in a subsequent release. Please use the gpio::v2 module instead.

Configures the pin to operate with a peripheral

👎 Deprecated since 0.13.0:

The gpio::v1 module is deprecated, and will be removed in a subsequent release. Please use the gpio::v2 module instead.

Configures the pin to operate with a peripheral

👎 Deprecated since 0.13.0:

The gpio::v1 module is deprecated, and will be removed in a subsequent release. Please use the gpio::v2 module instead.

Configures the pin to operate with a peripheral

👎 Deprecated since 0.13.0:

The gpio::v1 module is deprecated, and will be removed in a subsequent release. Please use the gpio::v2 module instead.

Configures the pin to operate with a peripheral

👎 Deprecated since 0.13.0:

The gpio::v1 module is deprecated, and will be removed in a subsequent release. Please use the gpio::v2 module instead.

Configures the pin to operate with a peripheral

👎 Deprecated since 0.13.0:

The gpio::v1 module is deprecated, and will be removed in a subsequent release. Please use the gpio::v2 module instead.

Configures the pin to operate with a peripheral

👎 Deprecated since 0.13.0:

The gpio::v1 module is deprecated, and will be removed in a subsequent release. Please use the gpio::v2 module instead.

Configures the pin to operate with a peripheral

👎 Deprecated since 0.13.0:

The gpio::v1 module is deprecated, and will be removed in a subsequent release. Please use the gpio::v2 module instead.

Configures the pin to operate with a peripheral

👎 Deprecated since 0.13.0:

The gpio::v1 module is deprecated, and will be removed in a subsequent release. Please use the gpio::v2 module instead.

Configures the pin to operate with a peripheral

👎 Deprecated since 0.13.0:

The gpio::v1 module is deprecated, and will be removed in a subsequent release. Please use the gpio::v2 module instead.

Configures the pin to operate with a peripheral

👎 Deprecated since 0.13.0:

The gpio::v1 module is deprecated, and will be removed in a subsequent release. Please use the gpio::v2 module instead.

Configures the pin to operate with a peripheral

👎 Deprecated since 0.13.0:

The gpio::v1 module is deprecated, and will be removed in a subsequent release. Please use the gpio::v2 module instead.

Configures the pin to operate with a peripheral

👎 Deprecated since 0.13.0:

The gpio::v1 module is deprecated, and will be removed in a subsequent release. Please use the gpio::v2 module instead.

Configures the pin to operate with a peripheral

👎 Deprecated since 0.13.0:

The gpio::v1 module is deprecated, and will be removed in a subsequent release. Please use the gpio::v2 module instead.

Control state of the internal pull up

This function shouldn’t exist. It is not possible to enable a pull-up resistor in an output mode.

👎 Deprecated since 0.13.0:

The gpio::v1 module is deprecated, and will be removed in a subsequent release. Please use the gpio::v2 module instead.

Toggle the logic level of the pin; if it is currently high, set it low and vice versa.

Trait Implementations

Implement AnyPin for v1 Pin types to enhance compatibility with v2::Pins

PinId of the corresponding Pin

PinMode of the corresponding Pin

Performs the conversion.

Performs the conversion.

Implement Channel for v1::Pins based on the implementations for v2 Pins

Channel ID type Read more

Get the specific ID that identifies this channel, for example 0_u8 for the first ADC channel, if Self::ID is u8. Read more

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Configure a pin as a floating external interrupt

Configure a pin as pulled-up external interrupt

Configure a pin as pulled-down external interrupt

Convert from a v2::Pin to a v1::Pin

Performs the conversion.

Convert from a v1::Pin to a v2::Pin

Performs the conversion.

Error type

Is the input pin high?

Is the input pin low?

Error type

Is the input pin high?

Is the input pin low?

👎 Deprecated since 0.13.0:

The gpio::v1 module is deprecated, and will be removed in a subsequent release. Please use the gpio::v2 module instead.

Consume the pin and configure it to operate in the mode T. Read more

Extend implementations of IsPad from v2::Pins to v1::Pins

Error type

Drives the pin high Read more

Drives the pin low Read more

Drives the pin high or low depending on the provided value Read more

Is the pin in drive high mode? Read more

Is the pin in drive low mode? Read more

Error type

Toggle pin output.

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Performs the conversion.

Performs the conversion.

Should always be Self

The type returned in the event of a conversion error.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.