[−][src]Struct stm32f1xx_hal::gpio::gpiob::PB3
Pin
Implementations
impl<MODE> PB3<MODE> where
MODE: Active,
[src]
MODE: Active,
pub fn into_alternate_push_pull(self, cr: &mut CRL) -> PB3<Alternate<PushPull>>
[src]
Configures the pin to operate as an alternate function push-pull output pin.
pub fn into_alternate_open_drain(
self,
cr: &mut CRL
) -> PB3<Alternate<OpenDrain>>
[src]
self,
cr: &mut CRL
) -> PB3<Alternate<OpenDrain>>
Configures the pin to operate as an alternate function open-drain output pin.
pub fn into_floating_input(self, cr: &mut CRL) -> PB3<Input<Floating>>
[src]
Configures the pin to operate as a floating input pin
pub fn into_pull_down_input(self, cr: &mut CRL) -> PB3<Input<PullDown>>
[src]
Configures the pin to operate as a pulled down input pin
pub fn into_pull_up_input(self, cr: &mut CRL) -> PB3<Input<PullUp>>
[src]
Configures the pin to operate as a pulled up input pin
pub fn into_open_drain_output(self, cr: &mut CRL) -> PB3<Output<OpenDrain>>
[src]
Configures the pin to operate as an open-drain output pin. Initial state will be low.
pub fn into_open_drain_output_with_state(
self,
cr: &mut CRL,
initial_state: State
) -> PB3<Output<OpenDrain>>
[src]
self,
cr: &mut CRL,
initial_state: State
) -> PB3<Output<OpenDrain>>
Configures the pin to operate as an open-drain output pin.
initial_state
specifies whether the pin should be initially high or low.
pub fn into_push_pull_output(self, cr: &mut CRL) -> PB3<Output<PushPull>>
[src]
Configures the pin to operate as an push-pull output pin. Initial state will be low.
pub fn into_push_pull_output_with_state(
self,
cr: &mut CRL,
initial_state: State
) -> PB3<Output<PushPull>>
[src]
self,
cr: &mut CRL,
initial_state: State
) -> PB3<Output<PushPull>>
Configures the pin to operate as an push-pull output pin.
initial_state
specifies whether the pin should be initially high or low.
pub fn into_analog(self, cr: &mut CRL) -> PB3<Analog>
[src]
Configures the pin to operate as an analog input pin
pub fn into_dynamic(self, cr: &mut CRL) -> PB3<Dynamic>
[src]
Configures the pin as a pin that can change between input and output without changing the type. It starts out as a floating input
impl<MODE> PB3<MODE> where
MODE: Active,
PB3<MODE>: PinMode<CRL>,
[src]
MODE: Active,
PB3<MODE>: PinMode<CRL>,
pub fn as_push_pull_output(
&mut self,
cr: &mut CRL,
f: impl FnMut(&mut PB3<Output<PushPull>>)
)
[src]
&mut self,
cr: &mut CRL,
f: impl FnMut(&mut PB3<Output<PushPull>>)
)
Temporarily change the mode of the pin.
The value of the pin after conversion is undefined. If you
want to control it, use $stateful_fn_name
pub fn as_push_pull_output_with_state(
&mut self,
cr: &mut CRL,
state: State,
f: impl FnMut(&mut PB3<Output<PushPull>>)
)
[src]
&mut self,
cr: &mut CRL,
state: State,
f: impl FnMut(&mut PB3<Output<PushPull>>)
)
Temporarily change the mode of the pin.
Note that the new state is set slightly before conversion happens. This can cause a short output glitch if switching between output modes
pub fn as_open_drain_output(
&mut self,
cr: &mut CRL,
f: impl FnMut(&mut PB3<Output<OpenDrain>>)
)
[src]
&mut self,
cr: &mut CRL,
f: impl FnMut(&mut PB3<Output<OpenDrain>>)
)
Temporarily change the mode of the pin.
The value of the pin after conversion is undefined. If you
want to control it, use $stateful_fn_name
pub fn as_open_drain_output_with_state(
&mut self,
cr: &mut CRL,
state: State,
f: impl FnMut(&mut PB3<Output<OpenDrain>>)
)
[src]
&mut self,
cr: &mut CRL,
state: State,
f: impl FnMut(&mut PB3<Output<OpenDrain>>)
)
Temporarily change the mode of the pin.
Note that the new state is set slightly before conversion happens. This can cause a short output glitch if switching between output modes
pub fn as_floating_input(
&mut self,
cr: &mut CRL,
f: impl FnMut(&mut PB3<Input<Floating>>)
)
[src]
&mut self,
cr: &mut CRL,
f: impl FnMut(&mut PB3<Input<Floating>>)
)
Temporarily change the mode of the pin.
pub fn as_pull_up_input(
&mut self,
cr: &mut CRL,
f: impl FnMut(&mut PB3<Input<PullUp>>)
)
[src]
&mut self,
cr: &mut CRL,
f: impl FnMut(&mut PB3<Input<PullUp>>)
)
Temporarily change the mode of the pin.
pub fn as_pull_down_input(
&mut self,
cr: &mut CRL,
f: impl FnMut(&mut PB3<Input<PullDown>>)
)
[src]
&mut self,
cr: &mut CRL,
f: impl FnMut(&mut PB3<Input<PullDown>>)
)
Temporarily change the mode of the pin.
impl<MODE> PB3<MODE> where
MODE: Active,
[src]
MODE: Active,
pub fn downgrade(self) -> Pxx<MODE>
[src]
Erases the pin number and port from the type
This is useful when you want to collect the pins into an array where you need all the elements to have the same type
impl PB3<Dynamic>
[src]
pub fn make_pull_up_input(&mut self, cr: &mut CRL)
[src]
pub fn make_pull_down_input(&mut self, cr: &mut CRL)
[src]
pub fn make_floating_input(&mut self, cr: &mut CRL)
[src]
pub fn make_push_pull_output(&mut self, cr: &mut CRL)
[src]
pub fn make_open_drain_output(&mut self, cr: &mut CRL)
[src]
Trait Implementations
impl<MODE> Default for PB3<Output<MODE>>
[src]
impl<MODE> ExtiPin for PB3<Input<MODE>>
[src]
fn make_interrupt_source(&mut self, afio: &mut Parts)
[src]
Configure EXTI Line $i to trigger from this pin.
fn trigger_on_edge(&mut self, exti: &EXTI, edge: Edge)
[src]
Generate interrupt on rising edge, falling edge or both
fn enable_interrupt(&mut self, exti: &EXTI)
[src]
Enable external interrupts from this pin.
fn disable_interrupt(&mut self, exti: &EXTI)
[src]
Disable external interrupts from this pin
fn clear_interrupt_pending_bit(&mut self)
[src]
Clear the interrupt pending bit for this pin
fn check_interrupt(&mut self) -> bool
[src]
Reads the interrupt pending bit for this pin
impl<MODE> InputPin for PB3<Input<MODE>>
[src]
type Error = Infallible
Error type
fn is_high(&self) -> Result<bool, Self::Error>
[src]
fn is_low(&self) -> Result<bool, Self::Error>
[src]
impl InputPin for PB3<Output<OpenDrain>>
[src]
type Error = Infallible
Error type
fn is_high(&self) -> Result<bool, Self::Error>
[src]
fn is_low(&self) -> Result<bool, Self::Error>
[src]
impl InputPin for PB3<Dynamic>
[src]
type Error = PinModeError
Error type
fn is_high(&self) -> Result<bool, Self::Error>
[src]
fn is_low(&self) -> Result<bool, Self::Error>
[src]
impl<MODE> Mode<MODE> for PB3<MODE>
[src]
impl<MODE> OutputPin for PB3<Output<MODE>>
[src]
type Error = Infallible
Error type
fn set_high(&mut self) -> Result<(), Self::Error>
[src]
fn set_low(&mut self) -> Result<(), Self::Error>
[src]
impl OutputPin for PB3<Dynamic>
[src]
type Error = PinModeError
Error type
fn set_high(&mut self) -> Result<(), Self::Error>
[src]
fn set_low(&mut self) -> Result<(), Self::Error>
[src]
impl PinMode<CRL> for PB3<Input<Floating>>
[src]
impl PinMode<CRL> for PB3<Input<PullDown>>
[src]
impl PinMode<CRL> for PB3<Input<PullUp>>
[src]
impl PinMode<CRL> for PB3<Output<OpenDrain>>
[src]
impl PinMode<CRL> for PB3<Output<PushPull>>
[src]
impl PinMode<CRL> for PB3<Analog>
[src]
impl<MODE> StatefulOutputPin for PB3<Output<MODE>>
[src]
fn is_set_high(&self) -> Result<bool, Self::Error>
[src]
fn is_set_low(&self) -> Result<bool, Self::Error>
[src]
Auto Trait Implementations
impl<MODE> Send for PB3<MODE> where
MODE: Send,
MODE: Send,
impl<MODE> Sync for PB3<MODE> where
MODE: Sync,
MODE: Sync,
impl<MODE> Unpin for PB3<MODE> where
MODE: Unpin,
MODE: Unpin,
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T> InputPin for T where
T: InputPin,
[src]
T: InputPin,
type Error = ()
Error type
fn is_low(&self) -> Result<bool, <T as InputPin>::Error>
[src]
fn is_high(&self) -> Result<bool, <T as InputPin>::Error>
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> OutputPin for T where
T: OutputPin,
[src]
T: OutputPin,
type Error = ()
Error type
fn set_low(&mut self) -> Result<(), <T as OutputPin>::Error>
[src]
fn set_high(&mut self) -> Result<(), <T as OutputPin>::Error>
[src]
impl<TIM, REMAP, P2> Pins<REMAP, C2> for P2 where
P2: Ch2<REMAP> + Mode<Alternate<PushPull>>,
REMAP: Remap<Periph = TIM>,
[src]
P2: Ch2<REMAP> + Mode<Alternate<PushPull>>,
REMAP: Remap<Periph = TIM>,
const C2: bool
[src]
type Channels = PwmChannel<TIM, C2>
const C1: bool
[src]
const C3: bool
[src]
const C4: bool
[src]
fn check_used(c: Channel) -> Channel
[src]
impl<T> Same<T> for T
type Output = T
Should always be Self
impl<T> StatefulOutputPin for T where
T: StatefulOutputPin + OutputPin,
[src]
T: StatefulOutputPin + OutputPin,
fn is_set_low(&self) -> Result<bool, <T as OutputPin>::Error>
[src]
fn is_set_high(&self) -> Result<bool, <T as OutputPin>::Error>
[src]
impl<P> ToggleableOutputPin for P where
P: Default,
[src]
P: Default,
type Error = <P as OutputPin>::Error
Error type
fn toggle(&mut self) -> Result<(), <P as ToggleableOutputPin>::Error>
[src]
Toggle pin output
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,