pub struct PinGroupWithRoles<'d, T: Instance, G, R1 = Channel, R2 = Channel, R3 = Channel, R4 = Channel> {
pub pin_group: PinGroup<'d, T, G>,
/* private fields */
}
Expand description
Represents a group of TSC pins with their associated roles.
This struct allows for type-safe configuration of TSC pin groups,
ensuring that pins are assigned appropriate roles within their group.
This type is essentially just a wrapper type around a PinGroup
value.
§Type Parameters
'd
: Lifetime of the pin group.T
: The TSC instance type.G
: The group identifier.R1
,R2
,R3
,R4
: Role types for each pin in the group, defaulting toChannel
.
Fields§
§pin_group: PinGroup<'d, T, G>
The underlying pin group without role information.
Implementations§
Source§impl<'d, T: Instance, R1: Role, R2: Role, R3: Role, R4: Role> PinGroupWithRoles<'d, T, G1, R1, R2, R3, R4>
impl<'d, T: Instance, R1: Role, R2: Role, R3: Role, R4: Role> PinGroupWithRoles<'d, T, G1, R1, R2, R3, R4>
Sourcepub fn set_io1<Role: Role>(
&mut self,
pin: impl Peripheral<P = impl G1IO1Pin<T>> + 'd,
) -> IOPinWithRole<G1, Role>
pub fn set_io1<Role: Role>( &mut self, pin: impl Peripheral<P = impl G1IO1Pin<T>> + 'd, ) -> IOPinWithRole<G1, Role>
Create a new pin1 for G1 TSC group instance.
Sourcepub fn set_io2<Role: Role>(
&mut self,
pin: impl Peripheral<P = impl G1IO2Pin<T>> + 'd,
) -> IOPinWithRole<G1, Role>
pub fn set_io2<Role: Role>( &mut self, pin: impl Peripheral<P = impl G1IO2Pin<T>> + 'd, ) -> IOPinWithRole<G1, Role>
Create a new pin1 for G1 TSC group instance.
Sourcepub fn set_io3<Role: Role>(
&mut self,
pin: impl Peripheral<P = impl G1IO3Pin<T>> + 'd,
) -> IOPinWithRole<G1, Role>
pub fn set_io3<Role: Role>( &mut self, pin: impl Peripheral<P = impl G1IO3Pin<T>> + 'd, ) -> IOPinWithRole<G1, Role>
Create a new pin1 for G1 TSC group instance.
Sourcepub fn set_io4<Role: Role>(
&mut self,
pin: impl Peripheral<P = impl G1IO4Pin<T>> + 'd,
) -> IOPinWithRole<G1, Role>
pub fn set_io4<Role: Role>( &mut self, pin: impl Peripheral<P = impl G1IO4Pin<T>> + 'd, ) -> IOPinWithRole<G1, Role>
Create a new pin1 for G1 TSC group instance.
Source§impl<'d, T: Instance, R1: Role, R2: Role, R3: Role, R4: Role> PinGroupWithRoles<'d, T, G2, R1, R2, R3, R4>
impl<'d, T: Instance, R1: Role, R2: Role, R3: Role, R4: Role> PinGroupWithRoles<'d, T, G2, R1, R2, R3, R4>
Sourcepub fn set_io1<Role: Role>(
&mut self,
pin: impl Peripheral<P = impl G2IO1Pin<T>> + 'd,
) -> IOPinWithRole<G2, Role>
pub fn set_io1<Role: Role>( &mut self, pin: impl Peripheral<P = impl G2IO1Pin<T>> + 'd, ) -> IOPinWithRole<G2, Role>
Create a new pin1 for G2 TSC group instance.
Sourcepub fn set_io2<Role: Role>(
&mut self,
pin: impl Peripheral<P = impl G2IO2Pin<T>> + 'd,
) -> IOPinWithRole<G2, Role>
pub fn set_io2<Role: Role>( &mut self, pin: impl Peripheral<P = impl G2IO2Pin<T>> + 'd, ) -> IOPinWithRole<G2, Role>
Create a new pin1 for G2 TSC group instance.
Sourcepub fn set_io3<Role: Role>(
&mut self,
pin: impl Peripheral<P = impl G2IO3Pin<T>> + 'd,
) -> IOPinWithRole<G2, Role>
pub fn set_io3<Role: Role>( &mut self, pin: impl Peripheral<P = impl G2IO3Pin<T>> + 'd, ) -> IOPinWithRole<G2, Role>
Create a new pin1 for G2 TSC group instance.
Sourcepub fn set_io4<Role: Role>(
&mut self,
pin: impl Peripheral<P = impl G2IO4Pin<T>> + 'd,
) -> IOPinWithRole<G2, Role>
pub fn set_io4<Role: Role>( &mut self, pin: impl Peripheral<P = impl G2IO4Pin<T>> + 'd, ) -> IOPinWithRole<G2, Role>
Create a new pin1 for G2 TSC group instance.
Source§impl<'d, T: Instance, R1: Role, R2: Role, R3: Role, R4: Role> PinGroupWithRoles<'d, T, G3, R1, R2, R3, R4>
impl<'d, T: Instance, R1: Role, R2: Role, R3: Role, R4: Role> PinGroupWithRoles<'d, T, G3, R1, R2, R3, R4>
Sourcepub fn set_io1<Role: Role>(
&mut self,
pin: impl Peripheral<P = impl G3IO1Pin<T>> + 'd,
) -> IOPinWithRole<G3, Role>
pub fn set_io1<Role: Role>( &mut self, pin: impl Peripheral<P = impl G3IO1Pin<T>> + 'd, ) -> IOPinWithRole<G3, Role>
Create a new pin1 for G3 TSC group instance.
Sourcepub fn set_io2<Role: Role>(
&mut self,
pin: impl Peripheral<P = impl G3IO2Pin<T>> + 'd,
) -> IOPinWithRole<G3, Role>
pub fn set_io2<Role: Role>( &mut self, pin: impl Peripheral<P = impl G3IO2Pin<T>> + 'd, ) -> IOPinWithRole<G3, Role>
Create a new pin1 for G3 TSC group instance.
Sourcepub fn set_io3<Role: Role>(
&mut self,
pin: impl Peripheral<P = impl G3IO3Pin<T>> + 'd,
) -> IOPinWithRole<G3, Role>
pub fn set_io3<Role: Role>( &mut self, pin: impl Peripheral<P = impl G3IO3Pin<T>> + 'd, ) -> IOPinWithRole<G3, Role>
Create a new pin1 for G3 TSC group instance.
Sourcepub fn set_io4<Role: Role>(
&mut self,
pin: impl Peripheral<P = impl G3IO4Pin<T>> + 'd,
) -> IOPinWithRole<G3, Role>
pub fn set_io4<Role: Role>( &mut self, pin: impl Peripheral<P = impl G3IO4Pin<T>> + 'd, ) -> IOPinWithRole<G3, Role>
Create a new pin1 for G3 TSC group instance.
Source§impl<'d, T: Instance, R1: Role, R2: Role, R3: Role, R4: Role> PinGroupWithRoles<'d, T, G4, R1, R2, R3, R4>
impl<'d, T: Instance, R1: Role, R2: Role, R3: Role, R4: Role> PinGroupWithRoles<'d, T, G4, R1, R2, R3, R4>
Sourcepub fn set_io1<Role: Role>(
&mut self,
pin: impl Peripheral<P = impl G4IO1Pin<T>> + 'd,
) -> IOPinWithRole<G4, Role>
pub fn set_io1<Role: Role>( &mut self, pin: impl Peripheral<P = impl G4IO1Pin<T>> + 'd, ) -> IOPinWithRole<G4, Role>
Create a new pin1 for G4 TSC group instance.
Sourcepub fn set_io2<Role: Role>(
&mut self,
pin: impl Peripheral<P = impl G4IO2Pin<T>> + 'd,
) -> IOPinWithRole<G4, Role>
pub fn set_io2<Role: Role>( &mut self, pin: impl Peripheral<P = impl G4IO2Pin<T>> + 'd, ) -> IOPinWithRole<G4, Role>
Create a new pin1 for G4 TSC group instance.
Sourcepub fn set_io3<Role: Role>(
&mut self,
pin: impl Peripheral<P = impl G4IO3Pin<T>> + 'd,
) -> IOPinWithRole<G4, Role>
pub fn set_io3<Role: Role>( &mut self, pin: impl Peripheral<P = impl G4IO3Pin<T>> + 'd, ) -> IOPinWithRole<G4, Role>
Create a new pin1 for G4 TSC group instance.
Sourcepub fn set_io4<Role: Role>(
&mut self,
pin: impl Peripheral<P = impl G4IO4Pin<T>> + 'd,
) -> IOPinWithRole<G4, Role>
pub fn set_io4<Role: Role>( &mut self, pin: impl Peripheral<P = impl G4IO4Pin<T>> + 'd, ) -> IOPinWithRole<G4, Role>
Create a new pin1 for G4 TSC group instance.
Source§impl<'d, T: Instance, R1: Role, R2: Role, R3: Role, R4: Role> PinGroupWithRoles<'d, T, G5, R1, R2, R3, R4>
impl<'d, T: Instance, R1: Role, R2: Role, R3: Role, R4: Role> PinGroupWithRoles<'d, T, G5, R1, R2, R3, R4>
Sourcepub fn set_io1<Role: Role>(
&mut self,
pin: impl Peripheral<P = impl G5IO1Pin<T>> + 'd,
) -> IOPinWithRole<G5, Role>
pub fn set_io1<Role: Role>( &mut self, pin: impl Peripheral<P = impl G5IO1Pin<T>> + 'd, ) -> IOPinWithRole<G5, Role>
Create a new pin1 for G5 TSC group instance.
Sourcepub fn set_io2<Role: Role>(
&mut self,
pin: impl Peripheral<P = impl G5IO2Pin<T>> + 'd,
) -> IOPinWithRole<G5, Role>
pub fn set_io2<Role: Role>( &mut self, pin: impl Peripheral<P = impl G5IO2Pin<T>> + 'd, ) -> IOPinWithRole<G5, Role>
Create a new pin1 for G5 TSC group instance.
Sourcepub fn set_io3<Role: Role>(
&mut self,
pin: impl Peripheral<P = impl G5IO3Pin<T>> + 'd,
) -> IOPinWithRole<G5, Role>
pub fn set_io3<Role: Role>( &mut self, pin: impl Peripheral<P = impl G5IO3Pin<T>> + 'd, ) -> IOPinWithRole<G5, Role>
Create a new pin1 for G5 TSC group instance.
Sourcepub fn set_io4<Role: Role>(
&mut self,
pin: impl Peripheral<P = impl G5IO4Pin<T>> + 'd,
) -> IOPinWithRole<G5, Role>
pub fn set_io4<Role: Role>( &mut self, pin: impl Peripheral<P = impl G5IO4Pin<T>> + 'd, ) -> IOPinWithRole<G5, Role>
Create a new pin1 for G5 TSC group instance.
Source§impl<'d, T: Instance, R1: Role, R2: Role, R3: Role, R4: Role> PinGroupWithRoles<'d, T, G6, R1, R2, R3, R4>
impl<'d, T: Instance, R1: Role, R2: Role, R3: Role, R4: Role> PinGroupWithRoles<'d, T, G6, R1, R2, R3, R4>
Sourcepub fn set_io1<Role: Role>(
&mut self,
pin: impl Peripheral<P = impl G6IO1Pin<T>> + 'd,
) -> IOPinWithRole<G6, Role>
pub fn set_io1<Role: Role>( &mut self, pin: impl Peripheral<P = impl G6IO1Pin<T>> + 'd, ) -> IOPinWithRole<G6, Role>
Create a new pin1 for G6 TSC group instance.
Sourcepub fn set_io2<Role: Role>(
&mut self,
pin: impl Peripheral<P = impl G6IO2Pin<T>> + 'd,
) -> IOPinWithRole<G6, Role>
pub fn set_io2<Role: Role>( &mut self, pin: impl Peripheral<P = impl G6IO2Pin<T>> + 'd, ) -> IOPinWithRole<G6, Role>
Create a new pin1 for G6 TSC group instance.
Sourcepub fn set_io3<Role: Role>(
&mut self,
pin: impl Peripheral<P = impl G6IO3Pin<T>> + 'd,
) -> IOPinWithRole<G6, Role>
pub fn set_io3<Role: Role>( &mut self, pin: impl Peripheral<P = impl G6IO3Pin<T>> + 'd, ) -> IOPinWithRole<G6, Role>
Create a new pin1 for G6 TSC group instance.
Sourcepub fn set_io4<Role: Role>(
&mut self,
pin: impl Peripheral<P = impl G6IO4Pin<T>> + 'd,
) -> IOPinWithRole<G6, Role>
pub fn set_io4<Role: Role>( &mut self, pin: impl Peripheral<P = impl G6IO4Pin<T>> + 'd, ) -> IOPinWithRole<G6, Role>
Create a new pin1 for G6 TSC group instance.
Source§impl<'d, T: Instance, R1: Role, R2: Role, R3: Role, R4: Role> PinGroupWithRoles<'d, T, G7, R1, R2, R3, R4>
impl<'d, T: Instance, R1: Role, R2: Role, R3: Role, R4: Role> PinGroupWithRoles<'d, T, G7, R1, R2, R3, R4>
Sourcepub fn set_io1<Role: Role>(
&mut self,
pin: impl Peripheral<P = impl G7IO1Pin<T>> + 'd,
) -> IOPinWithRole<G7, Role>
pub fn set_io1<Role: Role>( &mut self, pin: impl Peripheral<P = impl G7IO1Pin<T>> + 'd, ) -> IOPinWithRole<G7, Role>
Create a new pin1 for G7 TSC group instance.
Sourcepub fn set_io2<Role: Role>(
&mut self,
pin: impl Peripheral<P = impl G7IO2Pin<T>> + 'd,
) -> IOPinWithRole<G7, Role>
pub fn set_io2<Role: Role>( &mut self, pin: impl Peripheral<P = impl G7IO2Pin<T>> + 'd, ) -> IOPinWithRole<G7, Role>
Create a new pin1 for G7 TSC group instance.
Sourcepub fn set_io3<Role: Role>(
&mut self,
pin: impl Peripheral<P = impl G7IO3Pin<T>> + 'd,
) -> IOPinWithRole<G7, Role>
pub fn set_io3<Role: Role>( &mut self, pin: impl Peripheral<P = impl G7IO3Pin<T>> + 'd, ) -> IOPinWithRole<G7, Role>
Create a new pin1 for G7 TSC group instance.
Sourcepub fn set_io4<Role: Role>(
&mut self,
pin: impl Peripheral<P = impl G7IO4Pin<T>> + 'd,
) -> IOPinWithRole<G7, Role>
pub fn set_io4<Role: Role>( &mut self, pin: impl Peripheral<P = impl G7IO4Pin<T>> + 'd, ) -> IOPinWithRole<G7, Role>
Create a new pin1 for G7 TSC group instance.