Struct esp32c2_hal::gpio::GpioPin
source · pub struct GpioPin<MODE, RA, PINTYPE, const GPIONUM: u8>where
RA: BankGpioRegisterAccess,
PINTYPE: PinType,{ /* private fields */ }
Implementations§
source§impl<MODE, RA, PINTYPE, const GPIONUM: u8> GpioPin<MODE, RA, PINTYPE, GPIONUM>where
RA: BankGpioRegisterAccess,
PINTYPE: PinType,
impl<MODE, RA, PINTYPE, const GPIONUM: u8> GpioPin<MODE, RA, PINTYPE, GPIONUM>where
RA: BankGpioRegisterAccess,
PINTYPE: PinType,
pub fn into_floating_input(
self
) -> GpioPin<Input<Floating>, RA, PINTYPE, GPIONUM>
pub fn into_pull_up_input(self) -> GpioPin<Input<PullUp>, RA, PINTYPE, GPIONUM>
pub fn into_pull_down_input(
self
) -> GpioPin<Input<PullDown>, RA, PINTYPE, GPIONUM>
source§impl<MODE, RA, PINTYPE, const GPIONUM: u8> GpioPin<MODE, RA, PINTYPE, GPIONUM>where
RA: BankGpioRegisterAccess,
PINTYPE: IsOutputPin,
impl<MODE, RA, PINTYPE, const GPIONUM: u8> GpioPin<MODE, RA, PINTYPE, GPIONUM>where
RA: BankGpioRegisterAccess,
PINTYPE: IsOutputPin,
pub fn into_push_pull_output(
self
) -> GpioPin<Output<PushPull>, RA, PINTYPE, GPIONUM>
pub fn into_open_drain_output(
self
) -> GpioPin<Output<OpenDrain>, RA, PINTYPE, GPIONUM>
pub fn into_alternate_1(self) -> GpioPin<Alternate<AF1>, RA, PINTYPE, GPIONUM>
pub fn into_alternate_2(self) -> GpioPin<Alternate<AF2>, RA, PINTYPE, GPIONUM>
Trait Implementations§
source§impl<RA, PINTYPE, const GPIONUM: u8> From<GpioPin<Unknown, RA, PINTYPE, GPIONUM>> for GpioPin<Input<Floating>, RA, PINTYPE, GPIONUM>where
RA: BankGpioRegisterAccess,
PINTYPE: IsOutputPin,
impl<RA, PINTYPE, const GPIONUM: u8> From<GpioPin<Unknown, RA, PINTYPE, GPIONUM>> for GpioPin<Input<Floating>, RA, PINTYPE, GPIONUM>where
RA: BankGpioRegisterAccess,
PINTYPE: IsOutputPin,
source§impl<RA, PINTYPE, const GPIONUM: u8> From<GpioPin<Unknown, RA, PINTYPE, GPIONUM>> for GpioPin<Input<PullDown>, RA, PINTYPE, GPIONUM>where
RA: BankGpioRegisterAccess,
PINTYPE: IsInputPin,
impl<RA, PINTYPE, const GPIONUM: u8> From<GpioPin<Unknown, RA, PINTYPE, GPIONUM>> for GpioPin<Input<PullDown>, RA, PINTYPE, GPIONUM>where
RA: BankGpioRegisterAccess,
PINTYPE: IsInputPin,
source§impl<RA, PINTYPE, const GPIONUM: u8> From<GpioPin<Unknown, RA, PINTYPE, GPIONUM>> for GpioPin<Input<PullUp>, RA, PINTYPE, GPIONUM>where
RA: BankGpioRegisterAccess,
PINTYPE: IsOutputPin,
impl<RA, PINTYPE, const GPIONUM: u8> From<GpioPin<Unknown, RA, PINTYPE, GPIONUM>> for GpioPin<Input<PullUp>, RA, PINTYPE, GPIONUM>where
RA: BankGpioRegisterAccess,
PINTYPE: IsOutputPin,
source§impl<RA, PINTYPE, const GPIONUM: u8> From<GpioPin<Unknown, RA, PINTYPE, GPIONUM>> for GpioPin<Output<OpenDrain>, RA, PINTYPE, GPIONUM>where
RA: BankGpioRegisterAccess,
PINTYPE: IsOutputPin,
impl<RA, PINTYPE, const GPIONUM: u8> From<GpioPin<Unknown, RA, PINTYPE, GPIONUM>> for GpioPin<Output<OpenDrain>, RA, PINTYPE, GPIONUM>where
RA: BankGpioRegisterAccess,
PINTYPE: IsOutputPin,
source§impl<RA, PINTYPE, const GPIONUM: u8> From<GpioPin<Unknown, RA, PINTYPE, GPIONUM>> for GpioPin<Output<PushPull>, RA, PINTYPE, GPIONUM>where
RA: BankGpioRegisterAccess,
PINTYPE: IsOutputPin,
impl<RA, PINTYPE, const GPIONUM: u8> From<GpioPin<Unknown, RA, PINTYPE, GPIONUM>> for GpioPin<Output<PushPull>, RA, PINTYPE, GPIONUM>where
RA: BankGpioRegisterAccess,
PINTYPE: IsOutputPin,
source§impl<MODE, RA, PINTYPE, const GPIONUM: u8> InputPin for GpioPin<Input<MODE>, RA, PINTYPE, GPIONUM>where
RA: BankGpioRegisterAccess,
PINTYPE: PinType,
impl<MODE, RA, PINTYPE, const GPIONUM: u8> InputPin for GpioPin<Input<MODE>, RA, PINTYPE, GPIONUM>where
RA: BankGpioRegisterAccess,
PINTYPE: PinType,
source§impl<MODE, RA, PINTYPE, const GPIONUM: u8> InputPin for GpioPin<MODE, RA, PINTYPE, GPIONUM>where
RA: BankGpioRegisterAccess,
PINTYPE: PinType,
impl<MODE, RA, PINTYPE, const GPIONUM: u8> InputPin for GpioPin<MODE, RA, PINTYPE, GPIONUM>where
RA: BankGpioRegisterAccess,
PINTYPE: PinType,
fn set_to_input(&mut self) -> &mut GpioPin<MODE, RA, PINTYPE, GPIONUM>
fn enable_input(&mut self, on: bool) -> &mut GpioPin<MODE, RA, PINTYPE, GPIONUM>
fn enable_input_in_sleep_mode(
&mut self,
on: bool
) -> &mut GpioPin<MODE, RA, PINTYPE, GPIONUM>
fn is_input_high(&self) -> bool
fn connect_input_to_peripheral_with_options(
&mut self,
signal: InputSignal,
invert: bool,
force_via_gpio_mux: bool
) -> &mut GpioPin<MODE, RA, PINTYPE, GPIONUM>
source§fn disconnect_input_from_peripheral(
&mut self,
signal: InputSignal
) -> &mut GpioPin<MODE, RA, PINTYPE, GPIONUM>
fn disconnect_input_from_peripheral(
&mut self,
signal: InputSignal
) -> &mut GpioPin<MODE, RA, PINTYPE, GPIONUM>
Remove a connected
signal
from this input pin. Read morefn connect_input_to_peripheral(&mut self, signal: InputSignal) -> &mut Self
source§impl<RA, PINTYPE, const GPIONUM: u8> InputPin for GpioPin<Output<OpenDrain>, RA, PINTYPE, GPIONUM>where
RA: BankGpioRegisterAccess,
PINTYPE: PinType,
impl<RA, PINTYPE, const GPIONUM: u8> InputPin for GpioPin<Output<OpenDrain>, RA, PINTYPE, GPIONUM>where
RA: BankGpioRegisterAccess,
PINTYPE: PinType,
source§impl<MODE, RA, PINTYPE, const GPIONUM: u8> OutputPin for GpioPin<MODE, RA, PINTYPE, GPIONUM>where
RA: BankGpioRegisterAccess,
PINTYPE: IsOutputPin,
impl<MODE, RA, PINTYPE, const GPIONUM: u8> OutputPin for GpioPin<MODE, RA, PINTYPE, GPIONUM>where
RA: BankGpioRegisterAccess,
PINTYPE: IsOutputPin,
fn set_to_open_drain_output(
&mut self
) -> &mut GpioPin<MODE, RA, PINTYPE, GPIONUM>
fn set_to_push_pull_output(
&mut self
) -> &mut GpioPin<MODE, RA, PINTYPE, GPIONUM>
fn enable_output(&mut self, on: bool) -> &mut GpioPin<MODE, RA, PINTYPE, GPIONUM>
fn set_output_high(
&mut self,
high: bool
) -> &mut GpioPin<MODE, RA, PINTYPE, GPIONUM>
fn set_drive_strength(
&mut self,
strength: DriveStrength
) -> &mut GpioPin<MODE, RA, PINTYPE, GPIONUM>
fn enable_open_drain(
&mut self,
on: bool
) -> &mut GpioPin<MODE, RA, PINTYPE, GPIONUM>
fn internal_pull_up_in_sleep_mode(
&mut self,
on: bool
) -> &mut GpioPin<MODE, RA, PINTYPE, GPIONUM>
fn internal_pull_down_in_sleep_mode(
&mut self,
on: bool
) -> &mut GpioPin<MODE, RA, PINTYPE, GPIONUM>
fn enable_output_in_sleep_mode(
&mut self,
on: bool
) -> &mut GpioPin<MODE, RA, PINTYPE, GPIONUM>
fn connect_peripheral_to_output_with_options(
&mut self,
signal: OutputSignal,
invert: bool,
invert_enable: bool,
enable_from_gpio: bool,
force_via_gpio_mux: bool
) -> &mut GpioPin<MODE, RA, PINTYPE, GPIONUM>
source§fn disconnect_peripheral_from_output(
&mut self
) -> &mut GpioPin<MODE, RA, PINTYPE, GPIONUM>
fn disconnect_peripheral_from_output(
&mut self
) -> &mut GpioPin<MODE, RA, PINTYPE, GPIONUM>
fn internal_pull_up(
&mut self,
on: bool
) -> &mut GpioPin<MODE, RA, PINTYPE, GPIONUM>
fn internal_pull_down(
&mut self,
on: bool
) -> &mut GpioPin<MODE, RA, PINTYPE, GPIONUM>
fn connect_peripheral_to_output(&mut self, signal: OutputSignal) -> &mut Self
source§impl<MODE, RA, PINTYPE, const GPIONUM: u8> OutputPin for GpioPin<Output<MODE>, RA, PINTYPE, GPIONUM>where
RA: BankGpioRegisterAccess,
PINTYPE: IsOutputPin,
impl<MODE, RA, PINTYPE, const GPIONUM: u8> OutputPin for GpioPin<Output<MODE>, RA, PINTYPE, GPIONUM>where
RA: BankGpioRegisterAccess,
PINTYPE: IsOutputPin,
§type Error = Infallible
type Error = Infallible
Error type
source§fn set_high(
&mut self
) -> Result<(), <GpioPin<Output<MODE>, RA, PINTYPE, GPIONUM> as OutputPin>::Error>
fn set_high(
&mut self
) -> Result<(), <GpioPin<Output<MODE>, RA, PINTYPE, GPIONUM> as OutputPin>::Error>
Drives the pin high Read more