Struct kea_hal::clocks::osc::Osc [−][src]
pub struct Osc<Status, OscType, Range, Gain, ExtalPinState, XtalPinState> { /* fields omitted */ }
Expand description
External Oscillator Peripheral
Oscillator is Stopped (Disabled) by default.
Implementations
pub fn into_running(
self,
extal_pin: PTB7<ExtalPinState>
) -> Osc<Running, OscType, Range, Gain, ExtalPinState, XtalPinState>
[src]
pub fn into_running(
self,
extal_pin: PTB7<ExtalPinState>
) -> Osc<Running, OscType, Range, Gain, ExtalPinState, XtalPinState>
[src]Start-up the oscillator. Blocks until the oscillator is running.
pub fn into_unstoppable(
self
) -> Osc<Unstoppable, OscType, Range, Gain, ExtalPinState, XtalPinState>
[src]
pub fn into_unstoppable(
self
) -> Osc<Unstoppable, OscType, Range, Gain, ExtalPinState, XtalPinState>
[src]Allow the OSC peripheral to continue running when the system goes into STOP mode.
Stop (disable) the OSC peripheral
@TODO think of ways to not ruin someones day if they are using OSC_OUT as a reference clock.
impl<OscType, Range, Gain, ExtalPinState, XtalPinState> Osc<Unstoppable, OscType, Range, Gain, ExtalPinState, XtalPinState>
[src]
impl<OscType, Range, Gain, ExtalPinState, XtalPinState> Osc<Unstoppable, OscType, Range, Gain, ExtalPinState, XtalPinState>
[src]Allow the OSC peripheral to be stopped when the system goes into STOP mode.
Stop (disable) the OSC peripheral
@TODO think of ways to not ruin someones day if they are using OSC_OUT as a reference clock.
pub fn into_ext_clock(
self
) -> Osc<Status, ExtClock, Range, Gain, ExtalPinState, XtalPinState>
[src]
pub fn into_ext_clock(
self
) -> Osc<Status, ExtClock, Range, Gain, ExtalPinState, XtalPinState>
[src]Change to External Clock mode (not resonator or crystal)
Consumes Pin PTB
Change to External oscillator / resonator mode
Consumes Pins PTB6:PTB7
Returns the pin used for the XTAL input.
This pin is only needed for the external oscillator / resonator mode.
@TODO what is the state of the pin after decoupling from OSC peripheral?
pub fn into_high_range(
self
) -> Osc<Stopped, OscType, HighRange, Gain, ExtalPinState, XtalPinState>
[src]
pub fn into_high_range(
self
) -> Osc<Stopped, OscType, HighRange, Gain, ExtalPinState, XtalPinState>
[src]Set to high range.
4-20MHz input. Range must be set while the Osc module is disabled.
pub fn into_low_range(
self
) -> Osc<Stopped, OscType, HighRange, Gain, ExtalPinState, XtalPinState>
[src]
pub fn into_low_range(
self
) -> Osc<Stopped, OscType, HighRange, Gain, ExtalPinState, XtalPinState>
[src]Set to low range.
Roughly 32kHZ. Range must be set while the Osc module is disabled.
pub fn into_variable_gain(
self
) -> Osc<Status, OscType, Range, VariableGain, ExtalPinState, XtalPinState>
[src]
pub fn into_variable_gain(
self
) -> Osc<Status, OscType, Range, VariableGain, ExtalPinState, XtalPinState>
[src]Set the Oscillator to use Variable Gain.
This mode adjusts the oscillator gain to get an acceptable amplitude, minimizing power used.
pub fn into_high_gain(
self
) -> Osc<Status, OscType, Range, HighGain, ExtalPinState, XtalPinState>
[src]
pub fn into_high_gain(
self
) -> Osc<Status, OscType, Range, HighGain, ExtalPinState, XtalPinState>
[src]Set the Oscillator to use High Gain
This mode attempts to get rail-to-rail output from the oscillator or resonator.
Auto Trait Implementations
impl<Status, OscType, Range, Gain, ExtalPinState, XtalPinState> Send for Osc<Status, OscType, Range, Gain, ExtalPinState, XtalPinState> where
ExtalPinState: Send,
Gain: Send,
OscType: Send,
Range: Send,
Status: Send,
XtalPinState: Send,