Embassy
embassy-nrf

Crates

git

Versions

nrf52805

Flavors

Struct embassy_nrf::timer::Cc

source ·
pub struct Cc<'d, T: Instance> { /* private fields */ }
Expand description

A representation of a timer’s Capture/Compare (CC) register.

A CC register holds a 32-bit value. This is used either to store a capture of the timer’s current count, or to specify the value for the timer to compare against.

The timer will fire the register’s COMPARE event when its counter reaches the value stored in the register. When the register’s CAPTURE task is triggered, the timer will store the current value of its counter in the register

Implementations§

source§

impl<'d, T: Instance> Cc<'d, T>

source

pub fn read(&self) -> u32

Get the current value stored in the register.

source

pub fn write(&self, value: u32)

Set the value stored in the register.

event_compare will fire when the timer’s counter reaches this value.

source

pub fn capture(&self) -> u32

Capture the current value of the timer’s counter in this register, and return it.

source

pub fn task_capture(&self) -> Task<'d>

Returns this CC register’s CAPTURE task, for use with PPI.

When triggered, this task will capture the current value of the timer’s counter in this register.

source

pub fn event_compare(&self) -> Event<'d>

Returns this CC register’s COMPARE event, for use with PPI.

This event will fire when the timer’s counter reaches the value in this CC register.

source

pub fn short_compare_clear(&self)

Enable the shortcut between this CC register’s COMPARE event and the timer’s CLEAR task.

This means that when the COMPARE event is fired, the CLEAR task will be triggered.

So, when the timer’s counter reaches the value stored in this register, the timer’s counter will be reset to 0.

source

pub fn unshort_compare_clear(&self)

Disable the shortcut between this CC register’s COMPARE event and the timer’s CLEAR task.

source

pub fn short_compare_stop(&self)

Enable the shortcut between this CC register’s COMPARE event and the timer’s STOP task.

This means that when the COMPARE event is fired, the STOP task will be triggered.

So, when the timer’s counter reaches the value stored in this register, the timer will stop counting up.

source

pub fn unshort_compare_stop(&self)

Disable the shortcut between this CC register’s COMPARE event and the timer’s STOP task.

Auto Trait Implementations§

§

impl<'d, T> Freeze for Cc<'d, T>
where T: Freeze,

§

impl<'d, T> RefUnwindSafe for Cc<'d, T>
where T: RefUnwindSafe,

§

impl<'d, T> Send for Cc<'d, T>

§

impl<'d, T> Sync for Cc<'d, T>
where T: Sync,

§

impl<'d, T> Unpin for Cc<'d, T>
where T: Unpin,

§

impl<'d, T> !UnwindSafe for Cc<'d, T>

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Az for T

source§

fn az<Dst>(self) -> Dst
where T: Cast<Dst>,

Casts the value.
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<Src, Dst> CastFrom<Src> for Dst
where Src: Cast<Dst>,

source§

fn cast_from(src: Src) -> Dst

Casts the value.
source§

impl<T> CheckedAs for T

source§

fn checked_as<Dst>(self) -> Option<Dst>
where T: CheckedCast<Dst>,

Casts the value.
source§

impl<Src, Dst> CheckedCastFrom<Src> for Dst
where Src: CheckedCast<Dst>,

source§

fn checked_cast_from(src: Src) -> Option<Dst>

Casts the value.
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<Src, Dst> LosslessTryInto<Dst> for Src
where Dst: LosslessTryFrom<Src>,

source§

fn lossless_try_into(self) -> Option<Dst>

Performs the conversion.
source§

impl<Src, Dst> LossyInto<Dst> for Src
where Dst: LossyFrom<Src>,

source§

fn lossy_into(self) -> Dst

Performs the conversion.
source§

impl<T> OverflowingAs for T

source§

fn overflowing_as<Dst>(self) -> (Dst, bool)
where T: OverflowingCast<Dst>,

Casts the value.
source§

impl<Src, Dst> OverflowingCastFrom<Src> for Dst
where Src: OverflowingCast<Dst>,

source§

fn overflowing_cast_from(src: Src) -> (Dst, bool)

Casts the value.
source§

impl<T> Same for T

§

type Output = T

Should always be Self
source§

impl<T> SaturatingAs for T

source§

fn saturating_as<Dst>(self) -> Dst
where T: SaturatingCast<Dst>,

Casts the value.
source§

impl<Src, Dst> SaturatingCastFrom<Src> for Dst
where Src: SaturatingCast<Dst>,

source§

fn saturating_cast_from(src: Src) -> Dst

Casts the value.
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
source§

impl<T> UnwrappedAs for T

source§

fn unwrapped_as<Dst>(self) -> Dst
where T: UnwrappedCast<Dst>,

Casts the value.
source§

impl<Src, Dst> UnwrappedCastFrom<Src> for Dst
where Src: UnwrappedCast<Dst>,

source§

fn unwrapped_cast_from(src: Src) -> Dst

Casts the value.
source§

impl<T> WrappingAs for T

source§

fn wrapping_as<Dst>(self) -> Dst
where T: WrappingCast<Dst>,

Casts the value.
source§

impl<Src, Dst> WrappingCastFrom<Src> for Dst
where Src: WrappingCast<Dst>,

source§

fn wrapping_cast_from(src: Src) -> Dst

Casts the value.