libbladeRF  2.5.0
Nuand bladeRF library
Functions
Phase Detector/Freq. Synth Control

Description

Reference: http://www.analog.com/media/en/technical-documentation/data-sheets/ADF4002.pdf

Functions

API_EXPORT int CALL_CONV bladerf_get_pll_lock_state (struct bladerf *dev, bool *locked)
 
API_EXPORT int CALL_CONV bladerf_get_pll_enable (struct bladerf *dev, bool *enabled)
 
API_EXPORT int CALL_CONV bladerf_set_pll_enable (struct bladerf *dev, bool enable)
 
API_EXPORT int CALL_CONV bladerf_get_pll_refclk_range (struct bladerf *dev, const struct bladerf_range **range)
 
API_EXPORT int CALL_CONV bladerf_get_pll_refclk (struct bladerf *dev, uint64_t *frequency)
 
API_EXPORT int CALL_CONV bladerf_set_pll_refclk (struct bladerf *dev, uint64_t frequency)
 
API_EXPORT int CALL_CONV bladerf_get_pll_register (struct bladerf *dev, uint8_t address, uint32_t *val)
 
API_EXPORT int CALL_CONV bladerf_set_pll_register (struct bladerf *dev, uint8_t address, uint32_t val)
 

Function Documentation

◆ bladerf_get_pll_enable()

API_EXPORT int CALL_CONV bladerf_get_pll_enable ( struct bladerf *  dev,
bool *  enabled 
)

Fetch the state of the Phase Detector/Frequency Synthesizer

Parameters
devDevice handle
[out]enabledTrue if enabled, False otherwise
Returns
0 on success, value from Error codes list on failure

◆ bladerf_get_pll_lock_state()

API_EXPORT int CALL_CONV bladerf_get_pll_lock_state ( struct bladerf *  dev,
bool *  locked 
)

Fetch the lock state of the Phase Detector/Frequency Synthesizer

Parameters
devDevice handle
[out]lockedTrue if locked, False otherwise
Returns
0 on success, value from Error codes list on failure

◆ bladerf_get_pll_refclk()

API_EXPORT int CALL_CONV bladerf_get_pll_refclk ( struct bladerf *  dev,
uint64_t *  frequency 
)

Get the currently-configured frequency for the reference clock input.

Parameters
devDevice handle
[out]frequencyReference clock frequency
Returns
0 on success, value from Error codes list on failure

◆ bladerf_get_pll_refclk_range()

API_EXPORT int CALL_CONV bladerf_get_pll_refclk_range ( struct bladerf *  dev,
const struct bladerf_range **  range 
)

Get the valid range of frequencies for the reference clock input

Parameters
devDevice handle
[out]rangeReference clock frequency range
Returns
0 on success, value from Error codes list on failure

◆ bladerf_get_pll_register()

API_EXPORT int CALL_CONV bladerf_get_pll_register ( struct bladerf *  dev,
uint8_t  address,
uint32_t *  val 
)

Read value from Phase Detector/Frequency Synthesizer

The address is interpreted as the control bits (DB1 and DB0) used to write to a specific latch.

Parameters
devDevice handle
[in]addressLatch address
[out]valValue to read from
Returns
0 on success, value from Error codes list on failure

◆ bladerf_set_pll_enable()

API_EXPORT int CALL_CONV bladerf_set_pll_enable ( struct bladerf *  dev,
bool  enable 
)

Enable the Phase Detector/Frequency Synthesizer

Enabling this disables the VCTCXO trimmer DAC, and vice versa.

Parameters
devDevice handle
[in]enableTrue to enable, False otherwise
Returns
0 on success, value from Error codes list on failure

◆ bladerf_set_pll_refclk()

API_EXPORT int CALL_CONV bladerf_set_pll_refclk ( struct bladerf *  dev,
uint64_t  frequency 
)

Set the expected frequency for the reference clock input.

Parameters
devDevice handle
[in]frequencyReference clock frequency
Returns
0 on success, value from Error codes list on failure

◆ bladerf_set_pll_register()

API_EXPORT int CALL_CONV bladerf_set_pll_register ( struct bladerf *  dev,
uint8_t  address,
uint32_t  val 
)

Write value to Phase Detector/Frequency Synthesizer

The address is interpreted as the control bits (DB1 and DB0) used to write to a specific latch. These bits are masked out in val

Parameters
devDevice handle
[in]addressLatch address
[in]valValue to write to
Returns
0 on success, value from Error codes list on failure