pub struct Lockin {
pub(crate) afe: [Leaf<Gain>; 2],
pub(crate) lockin_mode: Leaf<LockinMode>,
pub(crate) pll_tc: [Leaf<u32>; 2],
pub(crate) lockin_k: Leaf<<Lowpass<2> as Filter>::Config>,
pub(crate) lockin_harmonic: Leaf<i32>,
pub(crate) lockin_phase: Leaf<i32>,
pub(crate) output_conf: [Leaf<Conf>; 2],
pub(crate) telemetry_period: Leaf<u16>,
pub(crate) stream: Leaf<StreamTarget>,
}
Fields§
§afe: [Leaf<Gain>; 2]
Configure the Analog Front End (AFE) gain.
§Path
afe/<n>
<n>
specifies which channel to configure.<n>
:= [0, 1]
§Value
Any of the variants of Gain enclosed in double quotes.
lockin_mode: Leaf<LockinMode>
Specifies the operational mode of the lockin.
§Path
lockin_mode
§Value
One of the variants of LockinMode enclosed in double quotes.
pll_tc: [Leaf<u32>; 2]
Specifis the PLL time constant.
§Path
pll_tc/<n>
<n>
specifies which channel to configure.<n>
:= [0, 1]
§Value
The PLL time constant exponent (1-31).
lockin_k: Leaf<<Lowpass<2> as Filter>::Config>
Specifies the lockin lowpass gains.
§Path
lockin_k
§Value
The lockin low-pass coefficients. See idsp::Lowpass
for determining them.
lockin_harmonic: Leaf<i32>
Specifies which harmonic to use for the lockin.
§Path
lockin_harmonic
§Value
Harmonic index of the LO. -1 to _de_modulate the fundamental (complex conjugate)
lockin_phase: Leaf<i32>
Specifies the LO phase offset.
§Path
lockin_phase
§Value
Demodulation LO phase offset. Units are in terms of i32, where i32::MIN is equivalent to -pi and i32::MAX is equivalent to +pi.
output_conf: [Leaf<Conf>; 2]
Specifies DAC output mode.
§Path
output_conf/<n>
<n>
specifies which channel to configure.<n>
:= [0, 1]
§Value
One of the variants of Conf enclosed in double quotes.
telemetry_period: Leaf<u16>
Specifies the telemetry output period in seconds.
§Path
telemetry_period
§Value
Any non-zero value less than 65536.
stream: Leaf<StreamTarget>
Implementations§
Trait Implementations§
source§impl TreeAny for Lockin
impl TreeAny for Lockin
source§fn ref_any_by_key<K>(&self, keys: K) -> Result<&dyn Any, Traversal>where
K: Keys,
fn ref_any_by_key<K>(&self, keys: K) -> Result<&dyn Any, Traversal>where
K: Keys,
dyn Any
trait object for a leaf node.source§fn mut_any_by_key<K>(&mut self, keys: K) -> Result<&mut dyn Any, Traversal>where
K: Keys,
fn mut_any_by_key<K>(&mut self, keys: K) -> Result<&mut dyn Any, Traversal>where
K: Keys,
dyn Any
trait object for a leaf node.source§impl<'de> TreeDeserialize<'de> for Lockin
impl<'de> TreeDeserialize<'de> for Lockin
source§fn deserialize_by_key<K, D>(
&mut self,
keys: K,
de: D,
) -> Result<usize, Error<D::Error>>where
K: Keys,
D: Deserializer<'de>,
fn deserialize_by_key<K, D>(
&mut self,
keys: K,
de: D,
) -> Result<usize, Error<D::Error>>where
K: Keys,
D: Deserializer<'de>,
source§impl TreeKey for Lockin
impl TreeKey for Lockin
source§impl TreeSerialize for Lockin
impl TreeSerialize for Lockin
source§fn serialize_by_key<K, S>(
&self,
keys: K,
ser: S,
) -> Result<usize, Error<S::Error>>where
K: Keys,
S: Serializer,
fn serialize_by_key<K, S>(
&self,
keys: K,
ser: S,
) -> Result<usize, Error<S::Error>>where
K: Keys,
S: Serializer,
Auto Trait Implementations§
impl Freeze for Lockin
impl RefUnwindSafe for Lockin
impl Send for Lockin
impl Sync for Lockin
impl Unpin for Lockin
impl UnwindSafe for Lockin
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<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)