Merge pull request #1599 from ilikepi63/main
feature(1355): Add trigger to task, triggered + clear to Event
This commit is contained in:
commit
4feabb13bf
1 changed files with 15 additions and 0 deletions
|
@ -137,6 +137,11 @@ impl Task {
|
||||||
Self(ptr)
|
Self(ptr)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// Triggers this task.
|
||||||
|
pub fn trigger(&mut self) {
|
||||||
|
unsafe { self.0.as_ptr().write_volatile(1) };
|
||||||
|
}
|
||||||
|
|
||||||
pub(crate) fn from_reg<T>(reg: &T) -> Self {
|
pub(crate) fn from_reg<T>(reg: &T) -> Self {
|
||||||
Self(unsafe { NonNull::new_unchecked(reg as *const _ as *mut _) })
|
Self(unsafe { NonNull::new_unchecked(reg as *const _ as *mut _) })
|
||||||
}
|
}
|
||||||
|
@ -173,6 +178,16 @@ impl Event {
|
||||||
Self(unsafe { NonNull::new_unchecked(reg as *const _ as *mut _) })
|
Self(unsafe { NonNull::new_unchecked(reg as *const _ as *mut _) })
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// Describes whether this Event is currently in a triggered state.
|
||||||
|
pub fn is_triggered(&self) -> bool {
|
||||||
|
unsafe { self.0.as_ptr().read_volatile() == 1 }
|
||||||
|
}
|
||||||
|
|
||||||
|
/// Clear the current register's triggered state, reverting it to 0.
|
||||||
|
pub fn clear(&mut self) {
|
||||||
|
unsafe { self.0.as_ptr().write_volatile(0) };
|
||||||
|
}
|
||||||
|
|
||||||
/// Address of publish register for this event.
|
/// Address of publish register for this event.
|
||||||
#[cfg(feature = "_dppi")]
|
#[cfg(feature = "_dppi")]
|
||||||
pub fn publish_reg(&self) -> *mut u32 {
|
pub fn publish_reg(&self) -> *mut u32 {
|
||||||
|
|
Loading…
Reference in a new issue