Loading...
Searching...
No Matches
uhd::tune_request_t Struct Reference

`#include <uhd/types/tune_request.hpp>`

Collaboration diagram for uhd::tune_request_t:
[legend]

## Public Types

enum | policy_t { POLICY_NONE = int('N') , POLICY_AUTO = int('A') , POLICY_MANUAL = int('M') }
| Policy options for tunable elements in the RF chain. More...

## Public Member Functions

| tune_request_t (double target_freq=0)
| tune_request_t (double target_freq, double lo_off)

## Public Attributes

double | target_freq
policy_t | rf_freq_policy
double | rf_freq
policy_t | dsp_freq_policy
double | dsp_freq
device_addr_t | args

## Detailed Description

A tune request instructs the implementation how to tune the RF chain. The policies can be used to select automatic tuning or fine control over the daughterboard IF and DSP tuning. Not all combinations of policies are applicable. Convenience constructors are supplied for most use cases.

See also Tuning Notes

## Member Enumeration Documentation

## policy_t

enum uhd::tune_request_t::policy_t

Policy options for tunable elements in the RF chain.

Enumerator
POLICY_NONE | Do not set this argument, use current setting.
POLICY_AUTO | Automatically determine the argument's value.
POLICY_MANUAL | Use the argument's value for the setting.

## Constructor & Destructor Documentation

## tune_request_t() [1/2]

uhd::tune_request_t::tune_request_t | ( | double | target_freq = 0 | ) |

Make a new tune request for a particular center frequency. Use an automatic policy for the RF and DSP frequency to tune the chain as close as possible to the target frequency.

Parameters

  target_freq | the target frequency in Hz

## tune_request_t() [2/2]

uhd::tune_request_t::tune_request_t | ( | double | target_freq,
|  | double | lo_off )

Make a new tune request for a particular center frequency. Use a manual policy for the RF frequency, and an automatic policy for the DSP frequency, to tune the chain as close as possible to the target frequency.

Parameters

  target_freq | the target frequency in Hz
  lo_off | the LO offset frequency in Hz

## Member Data Documentation

## args

device_addr_t uhd::tune_request_t::args

The args parameter is used to pass arbitrary key/value pairs. Possible keys used by args (depends on implementation):

- mode_n: Allows the user to tell the daughterboard tune code to choose between an integer N divider or fractional N divider. Default is fractional N on boards that support fractional N tuning. Fractional N provides greater tuning accuracy at the expense of spurs. Possible options for this key: "integer" or "fractional".

## dsp_freq

double uhd::tune_request_t::dsp_freq

The DSP frequency in Hz. Set when the policy is set to manual.

Note that the meaning of the DSP frequency's sign differs between TX and RX operations. The target frequency is the result of target_freq = rf_freq + sign * dsp_freq. For TX, sign is negative, and for RX, sign is positive. Example: If both RF and DSP tuning policies are set to manual, and rf_freq is set to 1 GHz, and dsp_freq is set to 10 MHz, the actual target frequency is 990 MHz for a TX tune request, and 1010 MHz for an RX tune request.

## dsp_freq_policy

policy_t uhd::tune_request_t::dsp_freq_policy

The policy for the DSP frequency. Automatic behavior: the difference between the target and IF.

## rf_freq

double uhd::tune_request_t::rf_freq

The RF frequency in Hz. Set when the policy is set to manual.

## rf_freq_policy

policy_t uhd::tune_request_t::rf_freq_policy

The policy for the RF frequency. Automatic behavior: the target frequency + default LO offset.

## target_freq

double uhd::tune_request_t::target_freq

The target frequency of the overall chain in Hz. Set this even if all policies are set to manual.

The documentation for this struct was generated from the following file:

- tune_request.hpp