Pin

Struct Pin 

Source
pub struct Pin<I, F, P>
where I: PinId, F: Function, P: PullType,
{ /* private fields */ }
Expand description

Represents a pin, with a given ID (e.g. Gpio3), a given function (e.g. FunctionUart) and a given pull type (e.g. pull-down).

Implementations§

Source§

impl<I, F, P> Pin<I, F, P>
where I: PinId, F: Function, P: PullType,

Source

pub fn id(&self) -> DynPinId

Pin ID.

Source

pub unsafe fn into_unchecked<F2, P2>(self) -> Pin<I, F2, P2>
where F2: Function, P2: PullType,

§Safety

This method does not check if the pin is actually configured as the target function or pull mode. This may lead to inconsistencies between the type-state and the actual state of the pin’s configuration.

Source

pub fn reconfigure<F2, P2>(self) -> Pin<I, F2, P2>
where F2: Function, P2: PullType, I: ValidFunction<F2>,

Convert the pin from one state to the other.

Source

pub fn into_mode<F2>(self) -> Pin<I, F2, P>
where F2: Function, I: ValidFunction<F2>,

👎Deprecated since 0.9.0: Misleading name mode when it changes the function. Please use into_function instead.

Convert the pin function.

Source

pub fn into_function<F2>(self) -> Pin<I, F2, P>
where F2: Function, I: ValidFunction<F2>,

Convert the pin function.

Source

pub fn into_pull_type<M2>(self) -> Pin<I, F, M2>
where M2: PullType,

Convert the pin pull type.

Source

pub fn into_dyn_pin(self) -> Pin<DynPinId, F, P>

Erase the Pin ID type check.

Source

pub fn pull_type(&self) -> DynPullType

Get the pin’s pull type.

Source

pub fn into_floating_disabled(self) -> Pin<I, FunctionNull, PullNone>

Disable the pin and set it to float

Source

pub fn into_pull_down_disabled(self) -> Pin<I, FunctionNull, PullDown>

Disable the pin and set it to pull down

Source

pub fn into_pull_up_disabled(self) -> Pin<I, FunctionNull, PullUp>

Disable the pin and set it to pull up

Source

pub fn into_floating_input(self) -> Pin<I, FunctionSio<SioInput>, PullNone>

Configure the pin to operate as a floating input

Source

pub fn into_pull_down_input(self) -> Pin<I, FunctionSio<SioInput>, PullDown>

Configure the pin to operate as a pulled down input

Source

pub fn into_pull_up_input(self) -> Pin<I, FunctionSio<SioInput>, PullUp>

Configure the pin to operate as a pulled up input

Source

pub fn into_bus_keep_input(self) -> Pin<I, FunctionSio<SioInput>, PullBusKeep>

Configure the pin to operate as a bus keep input

Source

pub fn into_push_pull_output(self) -> Pin<I, FunctionSio<SioOutput>, P>

Configure the pin to operate as a push-pull output.

If you want to specify the initial pin state, use Pin::into_push_pull_output_in_state.

Source

pub fn into_push_pull_output_in_state( self, state: PinState, ) -> Pin<I, FunctionSio<SioOutput>, P>

Configure the pin to operate as a push-pull output, specifying an initial state which is applied immediately.

Source

pub fn into_readable_output(self) -> Pin<I, FunctionSio<SioOutput>, P>

👎Deprecated since 0.9.0: All gpio are readable, use .into_push_pull_output() instead.

Configure the pin to operate as a readable push pull output.

If you want to specify the initial pin state, use Pin::into_readable_output_in_state.

Source

pub fn into_readable_output_in_state( self, state: PinState, ) -> Pin<I, FunctionSio<SioOutput>, P>

👎Deprecated since 0.9.0: All gpio are readable, use .into_push_pull_output_in_state() instead.

Configure the pin to operate as a readable push pull output, specifying an initial state which is applied immediately.

Source

pub fn get_drive_strength(&self) -> OutputDriveStrength

Get the current drive strength of the pin.

Source

pub fn set_drive_strength(&mut self, strength: OutputDriveStrength)

Set the drive strength for the pin.

Source

pub fn get_slew_rate(&self) -> OutputSlewRate

Get the slew rate for the pin.

Source

pub fn set_slew_rate(&mut self, rate: OutputSlewRate)

Set the slew rate for the pin.

Source

pub fn get_schmitt_enabled(&self) -> bool

Get whether the schmitt trigger (hysteresis) is enabled.

Source

pub fn set_schmitt_enabled(&self, enable: bool)

Enable/Disable the schmitt trigger.

Source

pub fn get_output_disable(&mut self) -> bool

Get the state of the digital output circuitry of the pad.

Source

pub fn set_output_disable(&mut self, disable: bool)

Set the digital output circuitry of the pad.

Source

pub fn get_input_enable(&mut self) -> bool

Get the state of the digital input circuitry of the pad.

Source

pub fn set_input_enable(&mut self, enable: bool)

Set the digital input circuitry of the pad.

Source

pub fn get_input_override(&self) -> InputOverride

Get the input override.

Source

pub fn set_input_override(&mut self, override_value: InputOverride)

Set the input override.

Source

pub fn get_output_enable_override(&self) -> OutputEnableOverride

Get the output enable override.

Source

pub fn set_output_enable_override( &mut self, override_value: OutputEnableOverride, )

Set the output enable override.

Source

pub fn get_output_override(&self) -> OutputOverride

Get the output override.

Source

pub fn set_output_override(&mut self, override_value: OutputOverride)

Set the output override.

Source

pub fn get_interrupt_override(&self) -> InterruptOverride

Get the interrupt override.

Source

pub fn set_interrupt_override(&mut self, override_value: InterruptOverride)

Set the interrupt override.

Source

pub fn clear_interrupt(&mut self, interrupt: Interrupt)

Clear interrupt.

Source

pub fn interrupt_status(&self, interrupt: Interrupt) -> bool

Interrupt status.

Source

pub fn is_interrupt_enabled(&self, interrupt: Interrupt) -> bool

Is interrupt enabled.

Source

pub fn set_interrupt_enabled(&self, interrupt: Interrupt, enabled: bool)

Enable or disable interrupt.

Source

pub fn is_interrupt_forced(&self, interrupt: Interrupt) -> bool

Is interrupt forced.

Source

pub fn set_interrupt_forced(&self, interrupt: Interrupt, forced: bool)

Force or release interrupt.

Source

pub fn dormant_wake_status(&self, interrupt: Interrupt) -> bool

Dormant wake status.

Source

pub fn is_dormant_wake_enabled(&self, interrupt: Interrupt) -> bool

Is dormant wake enabled.

Source

pub fn set_dormant_wake_enabled(&self, interrupt: Interrupt, enabled: bool)

Enable or disable dormant wake.

Source

pub fn is_dormant_wake_forced(&self, interrupt: Interrupt) -> bool

Is dormant wake forced.

Source

pub fn set_dormant_wake_forced(&mut self, interrupt: Interrupt, forced: bool)

Force dormant wake.

Source

pub fn as_input(&self) -> AsInputPin<'_, I, F, P>

Return a wrapper that implements InputPin.

This allows to read from the pin independent of the selected function. Depending on the pad configuration, reading from the pin may not return a meaningful result.

Calling this function does not set the pad’s input enable bit.

Source§

impl<I, C, P> Pin<I, FunctionSio<C>, P>
where I: PinId, C: SioConfig, P: PullType,

Source

pub fn is_sync_bypass(&self) -> bool

Is bypass enabled

Source

pub fn set_sync_bypass(&mut self, bypass: bool)

Bypass the input sync stages.

This saves two clock cycles in the input signal’s path at the risks of introducing metastability.

Source§

impl<F, P> Pin<DynPinId, F, P>
where F: Function, P: PullType,

Source

pub fn try_into_pin<P2>(self) -> Result<Pin<P2, F, P>, Pin<DynPinId, F, P>>
where P2: TypeLevelPinId,

Try to return to a type-checked pin id.

This method may fail if the target pin id differs from the current dynamic one.

Source

pub fn try_into_function<F2>( self, ) -> Result<Pin<DynPinId, F2, P>, Pin<DynPinId, F, P>>
where F2: Function,

Try to change the pin’s function.

Source§

impl<I, P> Pin<I, DynFunction, P>
where I: PinId, P: PullType,

Source

pub fn try_set_function( &mut self, function: DynFunction, ) -> Result<(), InvalidFunction>

Try to set the pin’s function.

This method may fail if the requested function is not supported by the pin, eg FunctionXiP on a gpio from Bank0.

Source

pub fn function(&self) -> DynFunction

Gets the pin’s function.

Source§

impl<I, F> Pin<I, F, DynPullType>
where I: PinId, F: Function,

Source

pub fn set_pull_type(&mut self, pull_type: DynPullType)

Set the pin’s pull type.

Trait Implementations§

Source§

impl<I, F, P> AnyPin for Pin<I, F, P>
where I: PinId, F: Function, P: PullType,

Source§

type Id = I

PinId of the corresponding Pin
Source§

type Function = F

func::Function of the corresponding Pin
Source§

type Pull = P

PullType of the corresponding Pin
Source§

impl<M> ClockSource for Pin<Gpio20, FunctionClock, M>
where M: PullType,

Source§

fn get_freq(&self) -> Rate<u32, 1, 1>

Get the operating frequency for this source Read more
Source§

impl<M> ClockSource for Pin<Gpio22, FunctionClock, M>
where M: PullType,

Source§

fn get_freq(&self) -> Rate<u32, 1, 1>

Get the operating frequency for this source Read more
Source§

impl<I, F, P> Debug for Pin<I, F, P>
where I: Debug + PinId, F: Debug + Function, P: Debug + PullType,

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter. Read more
Source§

impl<I, P, S> ErrorType for Pin<I, FunctionSio<S>, P>
where I: PinId, P: PullType, S: SioConfig,

Source§

type Error = Infallible

Error type
Source§

impl<I, P> InputPin for Pin<I, FunctionSio<SioInput>, P>
where I: PinId, P: PullType,

Source§

type Error = Infallible

Error type
Source§

fn is_high( &self, ) -> Result<bool, <Pin<I, FunctionSio<SioInput>, P> as InputPin>::Error>

Is the input pin high?
Source§

fn is_low( &self, ) -> Result<bool, <Pin<I, FunctionSio<SioInput>, P> as InputPin>::Error>

Is the input pin low?
Source§

impl<I, P> InputPin for Pin<I, FunctionSio<SioInput>, P>
where I: PinId, P: PullType,

Source§

fn is_high( &mut self, ) -> Result<bool, <Pin<I, FunctionSio<SioInput>, P> as ErrorType>::Error>

Is the input pin high?
Source§

fn is_low( &mut self, ) -> Result<bool, <Pin<I, FunctionSio<SioInput>, P> as ErrorType>::Error>

Is the input pin low?
Source§

impl<I, P> InputPin for Pin<I, FunctionSio<SioOutput>, P>
where I: PinId, P: PullType,

Deprecated: Instead of implicitly implementing InputPin for function SioOutput, use pin.as_input() to get access to input values independent of the selected function.

Source§

type Error = Infallible

Error type
Source§

fn is_high( &self, ) -> Result<bool, <Pin<I, FunctionSio<SioOutput>, P> as InputPin>::Error>

Is the input pin high?
Source§

fn is_low( &self, ) -> Result<bool, <Pin<I, FunctionSio<SioOutput>, P> as InputPin>::Error>

Is the input pin low?
Source§

impl<I, P> OutputPin for Pin<I, FunctionSio<SioOutput>, P>
where I: PinId, P: PullType,

Source§

type Error = Infallible

Error type
Source§

fn set_low( &mut self, ) -> Result<(), <Pin<I, FunctionSio<SioOutput>, P> as OutputPin>::Error>

Drives the pin low Read more
Source§

fn set_high( &mut self, ) -> Result<(), <Pin<I, FunctionSio<SioOutput>, P> as OutputPin>::Error>

Drives the pin high Read more
Source§

fn set_state(&mut self, state: PinState) -> Result<(), Self::Error>

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

impl<I, P> OutputPin for Pin<I, FunctionSio<SioOutput>, P>
where I: PinId, P: PullType,

Source§

fn set_low( &mut self, ) -> Result<(), <Pin<I, FunctionSio<SioOutput>, P> as ErrorType>::Error>

Drives the pin low. Read more
Source§

fn set_high( &mut self, ) -> Result<(), <Pin<I, FunctionSio<SioOutput>, P> as ErrorType>::Error>

Drives the pin high. Read more
Source§

fn set_state(&mut self, state: PinState) -> Result<(), Self::Error>

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

impl<I, P> StatefulOutputPin for Pin<I, FunctionSio<SioOutput>, P>
where I: PinId, P: PullType,

Source§

fn is_set_high( &self, ) -> Result<bool, <Pin<I, FunctionSio<SioOutput>, P> as OutputPin>::Error>

Is the pin in drive high mode? Read more
Source§

fn is_set_low( &self, ) -> Result<bool, <Pin<I, FunctionSio<SioOutput>, P> as OutputPin>::Error>

Is the pin in drive low mode? Read more
Source§

impl<I, P> StatefulOutputPin for Pin<I, FunctionSio<SioOutput>, P>
where I: PinId, P: PullType,

Source§

fn is_set_high( &mut self, ) -> Result<bool, <Pin<I, FunctionSio<SioOutput>, P> as ErrorType>::Error>

Is the pin in drive high mode? Read more
Source§

fn is_set_low( &mut self, ) -> Result<bool, <Pin<I, FunctionSio<SioOutput>, P> as ErrorType>::Error>

Is the pin in drive low mode? Read more
Source§

fn toggle( &mut self, ) -> Result<(), <Pin<I, FunctionSio<SioOutput>, P> as ErrorType>::Error>

Toggle pin output.
Source§

impl<I, P> ToggleableOutputPin for Pin<I, FunctionSio<SioOutput>, P>
where I: PinId, P: PullType,

Source§

type Error = Infallible

Error type
Source§

fn toggle( &mut self, ) -> Result<(), <Pin<I, FunctionSio<SioOutput>, P> as ToggleableOutputPin>::Error>

Toggle pin output.
Source§

impl ValidSrc<AdcClock> for Pin<Gpio20, FunctionClock, PullNone>

Source§

fn is_aux(&self) -> bool

Is this a ClockSource for src or aux?
Source§

fn variant(&self) -> ClkAdcSrcType

Get register value for this ClockSource
Source§

impl ValidSrc<AdcClock> for Pin<Gpio22, FunctionClock, PullNone>

Source§

fn is_aux(&self) -> bool

Is this a ClockSource for src or aux?
Source§

fn variant(&self) -> ClkAdcSrcType

Get register value for this ClockSource
Source§

impl ValidSrc<GpioOutput0Clock> for Pin<Gpio20, FunctionClock, PullNone>

Source§

fn is_aux(&self) -> bool

Is this a ClockSource for src or aux?
Source§

fn variant(&self) -> ClkGpout0SrcType

Get register value for this ClockSource
Source§

impl ValidSrc<GpioOutput0Clock> for Pin<Gpio22, FunctionClock, PullNone>

Source§

fn is_aux(&self) -> bool

Is this a ClockSource for src or aux?
Source§

fn variant(&self) -> ClkGpout0SrcType

Get register value for this ClockSource
Source§

impl ValidSrc<GpioOutput1Clock> for Pin<Gpio20, FunctionClock, PullNone>

Source§

fn is_aux(&self) -> bool

Is this a ClockSource for src or aux?
Source§

fn variant(&self) -> ClkGpout1SrcType

Get register value for this ClockSource
Source§

impl ValidSrc<GpioOutput1Clock> for Pin<Gpio22, FunctionClock, PullNone>

Source§

fn is_aux(&self) -> bool

Is this a ClockSource for src or aux?
Source§

fn variant(&self) -> ClkGpout1SrcType

Get register value for this ClockSource
Source§

impl ValidSrc<GpioOutput2Clock> for Pin<Gpio20, FunctionClock, PullNone>

Source§

fn is_aux(&self) -> bool

Is this a ClockSource for src or aux?
Source§

fn variant(&self) -> ClkGpout2SrcType

Get register value for this ClockSource
Source§

impl ValidSrc<GpioOutput2Clock> for Pin<Gpio22, FunctionClock, PullNone>

Source§

fn is_aux(&self) -> bool

Is this a ClockSource for src or aux?
Source§

fn variant(&self) -> ClkGpout2SrcType

Get register value for this ClockSource
Source§

impl ValidSrc<GpioOutput3Clock> for Pin<Gpio20, FunctionClock, PullNone>

Source§

fn is_aux(&self) -> bool

Is this a ClockSource for src or aux?
Source§

fn variant(&self) -> ClkGpout3SrcType

Get register value for this ClockSource
Source§

impl ValidSrc<GpioOutput3Clock> for Pin<Gpio22, FunctionClock, PullNone>

Source§

fn is_aux(&self) -> bool

Is this a ClockSource for src or aux?
Source§

fn variant(&self) -> ClkGpout3SrcType

Get register value for this ClockSource
Source§

impl ValidSrc<HstxClock> for Pin<Gpio20, FunctionClock, PullNone>

Source§

fn is_aux(&self) -> bool

Is this a ClockSource for src or aux?
Source§

fn variant(&self) -> ClkHstxSrcType

Get register value for this ClockSource
Source§

impl ValidSrc<HstxClock> for Pin<Gpio22, FunctionClock, PullNone>

Source§

fn is_aux(&self) -> bool

Is this a ClockSource for src or aux?
Source§

fn variant(&self) -> ClkHstxSrcType

Get register value for this ClockSource
Source§

impl ValidSrc<PeripheralClock> for Pin<Gpio20, FunctionClock, PullNone>

Source§

fn is_aux(&self) -> bool

Is this a ClockSource for src or aux?
Source§

fn variant(&self) -> ClkPeriSrcType

Get register value for this ClockSource
Source§

impl ValidSrc<PeripheralClock> for Pin<Gpio22, FunctionClock, PullNone>

Source§

fn is_aux(&self) -> bool

Is this a ClockSource for src or aux?
Source§

fn variant(&self) -> ClkPeriSrcType

Get register value for this ClockSource
Source§

impl ValidSrc<ReferenceClock> for Pin<Gpio20, FunctionClock, PullNone>

Source§

fn is_aux(&self) -> bool

Is this a ClockSource for src or aux?
Source§

fn variant(&self) -> ClkRefSrcType

Get register value for this ClockSource
Source§

impl ValidSrc<ReferenceClock> for Pin<Gpio22, FunctionClock, PullNone>

Source§

fn is_aux(&self) -> bool

Is this a ClockSource for src or aux?
Source§

fn variant(&self) -> ClkRefSrcType

Get register value for this ClockSource
Source§

impl ValidSrc<SystemClock> for Pin<Gpio20, FunctionClock, PullNone>

Source§

fn is_aux(&self) -> bool

Is this a ClockSource for src or aux?
Source§

fn variant(&self) -> ClkSysSrcType

Get register value for this ClockSource
Source§

impl ValidSrc<SystemClock> for Pin<Gpio22, FunctionClock, PullNone>

Source§

fn is_aux(&self) -> bool

Is this a ClockSource for src or aux?
Source§

fn variant(&self) -> ClkSysSrcType

Get register value for this ClockSource
Source§

impl ValidSrc<UsbClock> for Pin<Gpio20, FunctionClock, PullNone>

Source§

fn is_aux(&self) -> bool

Is this a ClockSource for src or aux?
Source§

fn variant(&self) -> ClkUsbSrcType

Get register value for this ClockSource
Source§

impl ValidSrc<UsbClock> for Pin<Gpio22, FunctionClock, PullNone>

Source§

fn is_aux(&self) -> bool

Is this a ClockSource for src or aux?
Source§

fn variant(&self) -> ClkUsbSrcType

Get register value for this ClockSource
Source§

impl<P> ValidPinCts<UART0> for Pin<Gpio14, FunctionUart, P>
where P: PullType,

Source§

impl<P> ValidPinCts<UART0> for Pin<Gpio18, FunctionUart, P>
where P: PullType,

Source§

impl<P> ValidPinCts<UART0> for Pin<Gpio2, FunctionUart, P>
where P: PullType,

Source§

impl<P> ValidPinCts<UART1> for Pin<Gpio10, FunctionUart, P>
where P: PullType,

Source§

impl<P> ValidPinCts<UART1> for Pin<Gpio22, FunctionUart, P>
where P: PullType,

Source§

impl<P> ValidPinCts<UART1> for Pin<Gpio26, FunctionUart, P>
where P: PullType,

Source§

impl<P> ValidPinCts<UART1> for Pin<Gpio6, FunctionUart, P>
where P: PullType,

Source§

impl<P> ValidPinRts<UART0> for Pin<Gpio15, FunctionUart, P>
where P: PullType,

Source§

impl<P> ValidPinRts<UART0> for Pin<Gpio19, FunctionUart, P>
where P: PullType,

Source§

impl<P> ValidPinRts<UART0> for Pin<Gpio3, FunctionUart, P>
where P: PullType,

Source§

impl<P> ValidPinRts<UART1> for Pin<Gpio11, FunctionUart, P>
where P: PullType,

Source§

impl<P> ValidPinRts<UART1> for Pin<Gpio23, FunctionUart, P>
where P: PullType,

Source§

impl<P> ValidPinRts<UART1> for Pin<Gpio27, FunctionUart, P>
where P: PullType,

Source§

impl<P> ValidPinRts<UART1> for Pin<Gpio7, FunctionUart, P>
where P: PullType,

Source§

impl<P> ValidPinRx<UART0> for Pin<Gpio1, FunctionUart, P>
where P: PullType,

Source§

impl<P> ValidPinRx<UART0> for Pin<Gpio13, FunctionUart, P>
where P: PullType,

Source§

impl<P> ValidPinRx<UART0> for Pin<Gpio15, FunctionUartAux, P>
where P: PullType,

Source§

impl<P> ValidPinRx<UART0> for Pin<Gpio17, FunctionUart, P>
where P: PullType,

Source§

impl<P> ValidPinRx<UART0> for Pin<Gpio19, FunctionUartAux, P>
where P: PullType,

Source§

impl<P> ValidPinRx<UART0> for Pin<Gpio29, FunctionUart, P>
where P: PullType,

Source§

impl<P> ValidPinRx<UART0> for Pin<Gpio3, FunctionUartAux, P>
where P: PullType,

Source§

impl<P> ValidPinRx<UART1> for Pin<Gpio11, FunctionUartAux, P>
where P: PullType,

Source§

impl<P> ValidPinRx<UART1> for Pin<Gpio21, FunctionUart, P>
where P: PullType,

Source§

impl<P> ValidPinRx<UART1> for Pin<Gpio23, FunctionUartAux, P>
where P: PullType,

Source§

impl<P> ValidPinRx<UART1> for Pin<Gpio25, FunctionUart, P>
where P: PullType,

Source§

impl<P> ValidPinRx<UART1> for Pin<Gpio27, FunctionUartAux, P>
where P: PullType,

Source§

impl<P> ValidPinRx<UART1> for Pin<Gpio5, FunctionUart, P>
where P: PullType,

Source§

impl<P> ValidPinRx<UART1> for Pin<Gpio7, FunctionUartAux, P>
where P: PullType,

Source§

impl<P> ValidPinRx<UART1> for Pin<Gpio9, FunctionUart, P>
where P: PullType,

Source§

impl<P> ValidPinTx<UART0> for Pin<Gpio0, FunctionUart, P>
where P: PullType,

Source§

impl<P> ValidPinTx<UART0> for Pin<Gpio12, FunctionUart, P>
where P: PullType,

Source§

impl<P> ValidPinTx<UART0> for Pin<Gpio14, FunctionUartAux, P>
where P: PullType,

Source§

impl<P> ValidPinTx<UART0> for Pin<Gpio16, FunctionUart, P>
where P: PullType,

Source§

impl<P> ValidPinTx<UART0> for Pin<Gpio18, FunctionUartAux, P>
where P: PullType,

Source§

impl<P> ValidPinTx<UART0> for Pin<Gpio2, FunctionUartAux, P>
where P: PullType,

Source§

impl<P> ValidPinTx<UART0> for Pin<Gpio28, FunctionUart, P>
where P: PullType,

Source§

impl<P> ValidPinTx<UART1> for Pin<Gpio10, FunctionUartAux, P>
where P: PullType,

Source§

impl<P> ValidPinTx<UART1> for Pin<Gpio20, FunctionUart, P>
where P: PullType,

Source§

impl<P> ValidPinTx<UART1> for Pin<Gpio22, FunctionUartAux, P>
where P: PullType,

Source§

impl<P> ValidPinTx<UART1> for Pin<Gpio24, FunctionUart, P>
where P: PullType,

Source§

impl<P> ValidPinTx<UART1> for Pin<Gpio26, FunctionUartAux, P>
where P: PullType,

Source§

impl<P> ValidPinTx<UART1> for Pin<Gpio4, FunctionUart, P>
where P: PullType,

Source§

impl<P> ValidPinTx<UART1> for Pin<Gpio6, FunctionUartAux, P>
where P: PullType,

Source§

impl<P> ValidPinTx<UART1> for Pin<Gpio8, FunctionUart, P>
where P: PullType,

Auto Trait Implementations§

§

impl<I, F, P> Freeze for Pin<I, F, P>
where I: Freeze, F: Freeze, P: Freeze,

§

impl<I, F, P> RefUnwindSafe for Pin<I, F, P>

§

impl<I, F, P> Send for Pin<I, F, P>
where I: Send, F: Send, P: Send,

§

impl<I, F, P> Sync for Pin<I, F, P>
where I: Sync, F: Sync, P: Sync,

§

impl<I, F, P> Unpin for Pin<I, F, P>
where I: Unpin, F: Unpin, P: Unpin,

§

impl<I, F, P> UnwindSafe for Pin<I, F, P>
where I: UnwindSafe, F: UnwindSafe, P: UnwindSafe,

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<Choices> CoproductSubsetter<CNil, HNil> for Choices

Source§

type Remainder = Choices

Source§

fn subset( self, ) -> Result<CNil, <Choices as CoproductSubsetter<CNil, HNil>>::Remainder>

Extract a subset of the possible types in a coproduct (or get the remaining possibilities) Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> IntoEither for T

Source§

fn into_either(self, into_left: bool) -> Either<Self, Self>

Converts self into a Left variant of Either<Self, Self> if into_left is true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

Converts self into a Left variant of Either<Self, Self> if into_left(&self) returns true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

impl<T> Is for T
where T: Sealed + Borrow<T> + BorrowMut<T>,

Source§

type Type = T

Source§

impl<T, U, I> LiftInto<U, I> for T
where U: LiftFrom<T, I>,

Source§

fn lift_into(self) -> U

Performs the indexed conversion.
Source§

impl<Source> Sculptor<HNil, HNil> for Source

Source§

type Remainder = Source

Source§

fn sculpt(self) -> (HNil, <Source as Sculptor<HNil, HNil>>::Remainder)

Consumes the current HList and returns an HList with the requested shape. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.