peary::component::Si5345

Si5345 Frequency Synthesizer Component.

#include <peary/hardware/components/Si5345.hpp>

Inherits from peary::hal::Component

Public Types

Name
enum class Register { PAGE = 0x01}

Public Functions

Name
Si5345(const std::string & i2c_bus, uint8_t device_address)Constructor for Si5345 class.
void configure(const std::any & config)Configure the Si5345 with a given register configuration.
void disable()Disable the Si5345 by writing the CLKOFF register configuration.
interface::iface_i2c::dataVector_type read(int page)Read a page of registers from the Si5345.
bool isLocked()Check if the Si5345 has achieved lock.

Additional inherited members

Public Functions inherited from peary::hal::Component

Name
Component() =defaultDefault constructor.
virtual ~Component() =defaultDefault destructor.

Public Types Documentation

enum Register

Enumerator Value Description
PAGE 0x01

Public Functions Documentation

function Si5345

  Si5345(
    const std::string & i2c_bus,
    uint8_t device_address
)
  

Constructor for Si5345 class.

Parameters:

  • i2c_bus The I2C bus to which the Si5345 is connected
  • device_address The I2C address of the Si5345 device

function configure

  void configure(
    const std::any & config
)
  

Configure the Si5345 with a given register configuration.

Parameters:

  • config A std::any object containing a vector of SI5345_REG_T structures

function disable

  void disable()
  

Disable the Si5345 by writing the CLKOFF register configuration.

function read

  interface::iface_i2c::dataVector_type read(
    int page
)
  

Read a page of registers from the Si5345.

Parameters:

  • page The page number to read

Return: A vector of register values read from the specified page

function isLocked

  bool isLocked()
  

Check if the Si5345 has achieved lock.

Return: True if the Si5345 is locked, false otherwise


Updated on 2025-11-14 at 11:31:23 +0100