Struct rp2040_hal::timer::Alarm3
source · pub struct Alarm3(/* private fields */);
Expand description
An alarm that can be used to schedule events in the future. Alarms can also be configured to trigger interrupts.
Trait Implementations§
source§impl Alarm for Alarm3
impl Alarm for Alarm3
source§fn clear_interrupt(&mut self)
fn clear_interrupt(&mut self)
Clear the interrupt flag. This should be called after interrupt TIMER_IRQ_3
is called.
The interrupt is unable to trigger a 2nd time until this interrupt is cleared.
source§fn enable_interrupt(&mut self)
fn enable_interrupt(&mut self)
Enable this alarm to trigger an interrupt. This alarm will trigger TIMER_IRQ_3
.
After this interrupt is triggered, make sure to clear the interrupt with clear_interrupt.
source§fn disable_interrupt(&mut self)
fn disable_interrupt(&mut self)
Disable this alarm, preventing it from triggering an interrupt.
source§fn schedule(
&mut self,
countdown: MicrosDurationU32
) -> Result<(), ScheduleAlarmError>
fn schedule( &mut self, countdown: MicrosDurationU32 ) -> Result<(), ScheduleAlarmError>
Schedule the alarm to be finished after countdown
. If enable_interrupt is called,
this will trigger interrupt TIMER_IRQ_3
whenever this time elapses.
source§fn schedule_at(&mut self, timestamp: Instant) -> Result<(), ScheduleAlarmError>
fn schedule_at(&mut self, timestamp: Instant) -> Result<(), ScheduleAlarmError>
Schedule the alarm to be finished at the given timestamp. If enable_interrupt is
called, this will trigger interrupt TIMER_IRQ_3
whenever this timestamp is reached.
The RP2040 is unable to schedule an event taking place in more than
u32::max_value()
microseconds.
Auto Trait Implementations§
impl Freeze for Alarm3
impl RefUnwindSafe for Alarm3
impl Send for Alarm3
impl Sync for Alarm3
impl Unpin for Alarm3
impl UnwindSafe for Alarm3
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
source§impl<Choices> CoproductSubsetter<CNil, HNil> for Choices
impl<Choices> CoproductSubsetter<CNil, HNil> for Choices
source§impl<T> IntoEither for T
impl<T> IntoEither for T
source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moresource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more