pub struct PpiGroup<'d, G: Group> { /* private fields */ }
Expand description
PPI channel group driver.
Implementations§
Source§impl<'d, G: Group> PpiGroup<'d, G>
impl<'d, G: Group> PpiGroup<'d, G>
Sourcepub fn new(g: impl Peripheral<P = G> + 'd) -> Self
pub fn new(g: impl Peripheral<P = G> + 'd) -> Self
Create a new PPI group driver.
The group is initialized as containing no channels.
Sourcepub fn add_channel<C: Channel, const EVENT_COUNT: usize, const TASK_COUNT: usize>(
&mut self,
ch: &Ppi<'_, C, EVENT_COUNT, TASK_COUNT>,
)
pub fn add_channel<C: Channel, const EVENT_COUNT: usize, const TASK_COUNT: usize>( &mut self, ch: &Ppi<'_, C, EVENT_COUNT, TASK_COUNT>, )
Add a PPI channel to this group.
If the channel is already in the group, this is a no-op.
Sourcepub fn remove_channel<C: Channel, const EVENT_COUNT: usize, const TASK_COUNT: usize>(
&mut self,
ch: &Ppi<'_, C, EVENT_COUNT, TASK_COUNT>,
)
pub fn remove_channel<C: Channel, const EVENT_COUNT: usize, const TASK_COUNT: usize>( &mut self, ch: &Ppi<'_, C, EVENT_COUNT, TASK_COUNT>, )
Remove a PPI channel from this group.
If the channel is already not in the group, this is a no-op.
Sourcepub fn enable_all(&mut self)
pub fn enable_all(&mut self)
Enable all the channels in this group.
Sourcepub fn disable_all(&mut self)
pub fn disable_all(&mut self)
Disable all the channels in this group.
Sourcepub fn task_enable_all(&self) -> Task<'d>
pub fn task_enable_all(&self) -> Task<'d>
Get a reference to the “enable all” task.
When triggered, it will enable all the channels in this group.
Sourcepub fn task_disable_all(&self) -> Task<'d>
pub fn task_disable_all(&self) -> Task<'d>
Get a reference to the “disable all” task.
When triggered, it will disable all the channels in this group.
Trait Implementations§
Auto Trait Implementations§
impl<'d, G> Freeze for PpiGroup<'d, G>where
G: Freeze,
impl<'d, G> RefUnwindSafe for PpiGroup<'d, G>where
G: RefUnwindSafe,
impl<'d, G> Send for PpiGroup<'d, G>where
G: Send,
impl<'d, G> Sync for PpiGroup<'d, G>where
G: Sync,
impl<'d, G> Unpin for PpiGroup<'d, G>where
G: Unpin,
impl<'d, G> !UnwindSafe for PpiGroup<'d, G>
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more