[−][src]Struct cortex_m::peripheral::SYST
SysTick: System Timer
Methods
impl SYST
[src]
impl SYST
pub fn clear_current(&mut self)
[src]
pub fn clear_current(&mut self)
Clears current value to 0
After calling clear_current()
, the next call to has_wrapped()
will return false
.
pub fn disable_counter(&mut self)
[src]
pub fn disable_counter(&mut self)
Disables counter
pub fn disable_interrupt(&mut self)
[src]
pub fn disable_interrupt(&mut self)
Disables SysTick interrupt
pub fn enable_counter(&mut self)
[src]
pub fn enable_counter(&mut self)
Enables counter
NOTE The reference manual indicates that:
"The SysTick counter reload and current value are undefined at reset, the correct initialization sequence for the SysTick counter is:
- Program reload value
- Clear current value
- Program Control and Status register"
The sequence translates to self.set_reload(x); self.clear_current(); self.enable_counter()
pub fn enable_interrupt(&mut self)
[src]
pub fn enable_interrupt(&mut self)
Enables SysTick interrupt
pub fn get_clock_source(&mut self) -> SystClkSource
[src]
pub fn get_clock_source(&mut self) -> SystClkSource
Gets clock source
NOTE This takes &mut self
because the read operation is side effectful and can clear the
bit that indicates that the timer has wrapped (cf. SYST.has_wrapped
)
pub fn get_current() -> u32
[src]
pub fn get_current() -> u32
Gets current value
pub fn get_reload() -> u32
[src]
pub fn get_reload() -> u32
Gets reload value
pub fn get_ticks_per_10ms() -> u32
[src]
pub fn get_ticks_per_10ms() -> u32
Returns the reload value with which the counter would wrap once per 10 ms
Returns 0
if the value is not known (e.g. because the clock can
change dynamically).
pub fn has_reference_clock() -> bool
[src]
pub fn has_reference_clock() -> bool
Checks if an external reference clock is available
pub fn has_wrapped(&mut self) -> bool
[src]
pub fn has_wrapped(&mut self) -> bool
Checks if the counter wrapped (underflowed) since the last check
NOTE This takes &mut self
because the read operation is side effectful and will clear
the bit of the read register.
pub fn is_counter_enabled(&mut self) -> bool
[src]
pub fn is_counter_enabled(&mut self) -> bool
Checks if counter is enabled
NOTE This takes &mut self
because the read operation is side effectful and can clear the
bit that indicates that the timer has wrapped (cf. SYST.has_wrapped
)
pub fn is_interrupt_enabled(&mut self) -> bool
[src]
pub fn is_interrupt_enabled(&mut self) -> bool
Checks if SysTick interrupt is enabled
NOTE This takes &mut self
because the read operation is side effectful and can clear the
bit that indicates that the timer has wrapped (cf. SYST.has_wrapped
)
pub fn is_precise() -> bool
[src]
pub fn is_precise() -> bool
Checks if the calibration value is precise
Returns false
if using the reload value returned by
get_ticks_per_10ms()
may result in a period significantly deviating
from 10 ms.
pub fn set_clock_source(&mut self, clk_source: SystClkSource)
[src]
pub fn set_clock_source(&mut self, clk_source: SystClkSource)
Sets clock source
pub fn set_reload(&mut self, value: u32)
[src]
pub fn set_reload(&mut self, value: u32)
Sets reload value
Valid values are between 1
and 0x00ffffff
.
NOTE To make the timer wrap every N
ticks set the reload value to N - 1
impl SYST
[src]
impl SYST
pub fn ptr() -> *const RegisterBlock
[src]
pub fn ptr() -> *const RegisterBlock
Returns a pointer to the register block
Trait Implementations
impl Deref for SYST
[src]
impl Deref for SYST
type Target = RegisterBlock
The resulting type after dereferencing.
fn deref(&self) -> &Self::Target
[src]
fn deref(&self) -> &Self::Target
Dereferences the value.
impl Send for SYST
[src]
impl Send for SYST
Auto Trait Implementations
Blanket Implementations
impl<T, U> TryFrom for T where
T: From<U>,
[src]
impl<T, U> TryFrom for T where
T: From<U>,
type Error = !
try_from
)The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
try_from
)Performs the conversion.
impl<T> From for T
[src]
impl<T> From for T
impl<T, U> TryInto for T where
U: TryFrom<T>,
[src]
impl<T, U> TryInto for T where
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
try_from
)The type returned in the event of a conversion error.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
try_from
)Performs the conversion.
impl<T, U> Into for T where
U: From<T>,
[src]
impl<T, U> Into for T where
U: From<T>,
impl<T> Borrow for T where
T: ?Sized,
[src]
impl<T> Borrow for T where
T: ?Sized,
impl<T> BorrowMut for T where
T: ?Sized,
[src]
impl<T> BorrowMut for T where
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
impl<T> Any for T where
T: 'static + ?Sized,
[src]
impl<T> Any for T where
T: 'static + ?Sized,
fn get_type_id(&self) -> TypeId
[src]
fn get_type_id(&self) -> TypeId
🔬 This is a nightly-only experimental API. (get_type_id
)
this method will likely be replaced by an associated static
Gets the TypeId
of self
. Read more