adi.ADRV9002.Tx

The adi.ADRV9002.Tx System object is a signal sink that can transmit
complex data from the ADRV9002.

tx = adi.ADRV9002.Tx;
tx = adi.ADRV9002.Tx('uri','ip:192.168.2.1');

Significant configuration of the transceiver is done by loading profiles
created through the Transceiver Evaluation Software (TES). This includes
settings such as sample rate, bandwidth, data interface format, and TDD
or FDD operation. For more information on creating and loading profiles,
refer to the ADRV9002 documentation.

ADRV9002 Datasheet
Creation

The class can be instantiated in the following way with and without property name value pairs.

dev = adi.ADRV9002.Tx
dev = adi.ADRV9002.Tx(Name, Value)
Properties
Unless otherwise indicated, properties are non-tunable, which means you cannot change their values after calling the object. Objects lock when you call them, and the release function unlocks them.

If a property is tunable, you can change its value at any time.

For more information on changing property values, see System Design in MATLAB Using System Objects.

specified as one of the following: ‘calibrated’ ‘primed’ ‘rf_enabled’

specified as one of the following: ‘calibrated’ ‘primed’ ‘rf_enabled’

Attenuation specified as a scalar from -89.75 to 0 dB with a resolution of 0.25 dB.

Attenuation specified as a scalar from -89.75 to 0 dB with a resolution of 0.25 dB.

Control attenuation through: - bypass - spi - pin

Control attenuation through: - bypass - spi - pin

specified as one of the following: ‘spi’ ‘pin’

specified as one of the following: ‘spi’ ‘pin’

Quadrature Error Correction on the fly tracking calibration for channel 0

Quadrature Error Correction on the fly tracking calibration for channel 1

Number of samples per frame, specified as an even positive integer from 2 to 16,777,216. Using values less than 3660 can yield poor performance.

Enable use of custom Profile file to set SamplingRate, RFBandwidth, and other features of transceiver

Path to custom Profile file created from profile wizard

Path to custom stream file created from profile wizard

Baseband sampling rate in Hz, specified as a scalar in samples per second. This is a read-only property

RF center frequency, specified in Hz as a scalar. The default is 2.4e9. This property is tunable.

RF center frequency, specified in Hz as a scalar. The default is 2.4e9. This property is tunable.

NCO correction frequency, specified in Hz as a scalar. The default is 0. This property is tunable.

NCO correction frequency, specified in Hz as a scalar. The default is 0. This property is tunable.

Indexs of channels to be enabled. Input should be a [1xN] vector with the indexes of channels to be enabled. Order is irrelevant

Hostname or IP address of remote libIIO device

If true, connects to libIIO device during simulation

Data source, specified as one of the following: ‘DMA’ — Specify the host as the source of the data. ‘DDS’ — Specify the DDS on the radio hardware as the source of the data. In this case, each channel has two additive tones.

Frequencies values in Hz of the DDS tone generators. For complex data devices the input is a [2xN] matrix where N is the available channels on the board. For complex data devices this is at most max(EnabledChannels)*2. For non-complex data devices this is at most max(EnabledChannels). If N < this upper limit, other DDSs are not set.

Scale of DDS tones in range [0,1]. For complex data devices the input is a [2xN] matrix where N is the available channels on the board. For complex data devices this is at most max(EnabledChannels)*2. For non-complex data devices this is at most max(EnabledChannels). If N < this upper limit, other DDSs are not set.

Phases of DDS tones in range [0,360000]. For complex data devices the input is a [2xN] matrix where N is the available channels on the board. For complex data devices this is at most max(EnabledChannels)*2. For non-complex data devices this is at most max(EnabledChannels). If N < this upper limit, other DDSs are not set.

Enable Cyclic Buffers, configures transmit buffers to be cyclic, which makes them continuously repeat


Example Usage
%% Configure device
tx = adi.ADRV9002.Tx;
tx.uri = 'ip:analog.local';

tx.CenterFrequencyChannel0 = 1e9;

tx.DataSource = 'DMA';
tx.EnableCyclicBuffers = true;
tx.EnabledChannels = 1;
%% Generate tone
amplitude = 2^15; frequency = 0.12e6;
swv1 = dsp.SineWave(amplitude, frequency);
swv1.ComplexOutput = true;
swv1.SamplesPerFrame = 2^14;
swv1.SampleRate = tx.SamplingRate;
y = swv1();
% Send
tx(y);