Main Content

sdrrx

Create receiver System object for Xilinx Zynq-based radio hardware

Add-On Required: This feature requires the SoC Blockset Support Package for AMD FPGA and SoC Devices add-on.

Description

rx = sdrrx(DeviceName) creates a receiver System object™ with default properties that receives data from the radio hardware specified by DeviceName. The object receives data over a gigabit Ethernet network connection.

When you call the receiver System object, the object connects to the radio hardware. The object stays connected until you call the release function. For more information on how to use the object, see the documentation of the corresponding System object.

example

rx = sdrrx(DeviceName,Name,Value) specifies additional properties using one or more Name,Value arguments.

Examples

collapse all

Create a receiver System object for the AD936x-based Zynq radio hardware with the specified properties. Use a single channel.

rx = sdrrx('AD936x', ...
    'IPAddress','192.168.3.2', ...
    'CenterFrequency',2.2e9, ...
    'BasebandSampleRate',800e3, ...    
    'ChannelMapping',1)
rx = 
  comm.SDRRxAD936x with properties:

   Main
                DeviceName: 'AD936x'
                 IPAddress: '192.168.3.2'
           CenterFrequency: 2.2000e+09
                GainSource: 'AGC Slow Attack'
            ChannelMapping: 1
        BasebandSampleRate: 800000
            OutputDataType: 'int16'
           SamplesPerFrame: 20000
           EnableBurstMode: false
    ShowAdvancedProperties: false

  Show all properties

Create a log for recording data.

Log = dsp.SignalSink;

Receive and validate data by using the receiver System object. Save valid data using the log.

for counter = 1:20
    [data,validData,overflow] = rx();
    if validData == 1 
        if overflow ~=1 % contiguous data
             Log(data);
        end
    else
        disp('Not valid data.');
    end
end 
## Establishing connection to hardware. This process can take several seconds.

Create a receiver System object for the FMCOMMS5 radio hardware with the specified properties. Use two channels.

rx = sdrrx('FMCOMMS5', ...    
    'IPAddress','192.168.3.2', ...
    'CenterFrequency',2.2e9, ...
    'BasebandSampleRate',800e3, ...    
    'ChannelMapping',[1 2])
rx = 
  comm.SDRRxFMCOMMS5 with properties:

   Main
                DeviceName: 'FMCOMMS5'
                 IPAddress: '192.168.3.2'
           CenterFrequency: 2.2000e+09
                GainSource: 'AGC Slow Attack'
            ChannelMapping: [1 2]
        BasebandSampleRate: 800000
            OutputDataType: 'int16'
           SamplesPerFrame: 20000
           EnableBurstMode: false
    ShowAdvancedProperties: false

  Show all properties

Create a log for recording data.

Log = dsp.SignalSink;

Receive and validate data by using the receiver System object. Save valid data using the log.

for counter = 1:20
    [data,validData,overflow] = rx();
    if validData == 1 
        if overflow ~=1 % contiguous data
             Log(data);
        end
    else
        disp('Not valid data.');
    end
end 
## Establishing connection to hardware. This process can take several seconds.

Input Arguments

collapse all

Name of Xilinx Zynq-based radio hardware, specified as one of the character vectors:

  • 'AD936x' — Use this option to interface with any of the following radio hardware devices:

    • Analog Devices® RF SOM

    • Xilinx Zynq ZC706 Evaluation Kit with Analog Devices FMCOMMS2/3/4 RF card

    • ZedBoard™ with Analog Devices FMCOMMS2/3/4 RF card

    • Zynq UltraScale+™ MPSoC ZCU102 Evaluation Kit with Analog Devices FMCOMMS2/3/4 RF card

  • 'FMCOMMS5' — Use this option to interface with a Xilinx ZC706 radio hardware with Analog Devices FMCOMMS5 RF card.

Data Types: char | string

Name-Value Arguments

Specify optional pairs of arguments as Name1=Value1,...,NameN=ValueN, where Name is the argument name and Value is the corresponding value. Name-value arguments must appear after other arguments, but the order of the pairs does not matter.

Before R2021a, use commas to separate each name and value, and enclose Name in quotes.

Example: GainSource','Manual','Gain',20 sets the receiver gain to 20 dB.

For a full list of property names and values, see the properties of the returned receiver System object, rx.

Output Arguments

collapse all

Receiver for the specified radio hardware, returned as a Xilinx Zynq-based radio System object. For more information on how to use the object, see the corresponding documentation:

Version History

Introduced in R2014b