[][src]Trait si5351::Si5351

pub trait Si5351 {
    fn init_adafruit_module(&mut self) -> Result<(), Error>;
fn init(&mut self, xtal_load: CrystalLoad) -> Result<(), Error>;
fn read_device_status(&mut self) -> Result<DeviceStatusBits, Error>;
fn find_int_dividers_for_max_pll_freq(
        &self,
        max_pll_freq: u32,
        freq: u32
    ) -> Result<(u16, OutputDivider), Error>;
fn find_pll_coeffs_for_dividers(
        &self,
        total_div: u32,
        denom: u32,
        freq: u32
    ) -> Result<(u8, u32), Error>;
fn set_frequency(
        &mut self,
        pll: PLL,
        clk: ClockOutput,
        freq: u32
    ) -> Result<(), Error>;
fn set_clock_enabled(&mut self, clk: ClockOutput, enabled: bool);
fn flush_output_enabled(&mut self) -> Result<(), Error>;
fn flush_clock_control(&mut self, clk: ClockOutput) -> Result<(), Error>;
fn setup_pll_int(&mut self, pll: PLL, mult: u8) -> Result<(), Error>;
fn setup_pll(
        &mut self,
        pll: PLL,
        mult: u8,
        num: u32,
        denom: u32
    ) -> Result<(), Error>;
fn setup_multisynth_int(
        &mut self,
        ms: Multisynth,
        mult: u16,
        r_div: OutputDivider
    ) -> Result<(), Error>;
fn setup_multisynth(
        &mut self,
        ms: Multisynth,
        div: u16,
        num: u32,
        denom: u32,
        r_div: OutputDivider
    ) -> Result<(), Error>;
fn select_clock_pll(&mut self, clocl: ClockOutput, pll: PLL); }

Required methods

fn init_adafruit_module(&mut self) -> Result<(), Error>

fn init(&mut self, xtal_load: CrystalLoad) -> Result<(), Error>

fn read_device_status(&mut self) -> Result<DeviceStatusBits, Error>

fn find_int_dividers_for_max_pll_freq(
    &self,
    max_pll_freq: u32,
    freq: u32
) -> Result<(u16, OutputDivider), Error>

fn find_pll_coeffs_for_dividers(
    &self,
    total_div: u32,
    denom: u32,
    freq: u32
) -> Result<(u8, u32), Error>

fn set_frequency(
    &mut self,
    pll: PLL,
    clk: ClockOutput,
    freq: u32
) -> Result<(), Error>

fn set_clock_enabled(&mut self, clk: ClockOutput, enabled: bool)

fn flush_output_enabled(&mut self) -> Result<(), Error>

fn flush_clock_control(&mut self, clk: ClockOutput) -> Result<(), Error>

fn setup_pll_int(&mut self, pll: PLL, mult: u8) -> Result<(), Error>

fn setup_pll(
    &mut self,
    pll: PLL,
    mult: u8,
    num: u32,
    denom: u32
) -> Result<(), Error>

fn setup_multisynth_int(
    &mut self,
    ms: Multisynth,
    mult: u16,
    r_div: OutputDivider
) -> Result<(), Error>

fn setup_multisynth(
    &mut self,
    ms: Multisynth,
    div: u16,
    num: u32,
    denom: u32,
    r_div: OutputDivider
) -> Result<(), Error>

fn select_clock_pll(&mut self, clocl: ClockOutput, pll: PLL)

Loading content...

Implementors

impl<I2C, E> Si5351 for Si5351Device<I2C> where
    I2C: WriteRead<Error = E> + Write<Error = E>, 
[src]

Loading content...