ADLAM PLUTO baseband modulation

11 次查看(过去 30 天)
JOB
JOB 2020-3-1
Hi, everyone, I'm new to ADLAM PLUTO. I want to transmit/receive Baseband signals (an array of complex numbers) using ADLAM pluto.
The following MATLAB code was used
clc; close all;clear all;
% Setup Receiver
rx=sdrrx('Pluto','OutputDataType','double','SamplesPerFrame',2^15);
% Setup Transmitter
tx = sdrtx('Pluto','Gain',-21);
% Transmit Random
myrandom=(randi([0,1],1,10)+randi([0,1],1,10)*i);
tx.transmitRepeat(myrandom());
% Setup Scope
samplesPerStep = rx.SamplesPerFrame/rx.BasebandSampleRate;
steps = 20;
ts = dsp.TimeScope('SampleRate', rx.BasebandSampleRate,...
'TimeSpan', samplesPerStep*steps,...
'BufferLength', rx.SamplesPerFrame*steps);
sa = dsp.SpectrumAnalyzer;
sa.SampleRate = rx.BasebandSampleRate;
for k=1:steps
ts(rx());
sa(rx());
end
This code produced the following error message
Error using comm.libiio.AD9361.tx/validateInputsImpl
The number of columns of the input signal must match the number of
channels selected for single-channel settings.
Error in comm.libiio.AD9361.tx/transmitRepeat
How can it be done using transmitrepeat() command? Can I have a choice of carrier frequency and type of modulation for this?
How can "The number of columns of the input signal must match the number of channels selected for single-channel settings." be specified in sdrtx?
With what commands can the transmitted signals can be made available for further MATLAB processing after receiving it?
Thanks in advance!

回答(1 个)

nicolas pellanda
nicolas pellanda 2021-4-27
try to write the vector in input in your transmit system tx (tx.transmitRepeat()) as a column vector. For doing this try to write
myrandom=(randi([0,1],1,10)+randi([0,1],1,10)*i);
myrandom=myrandom';
tx.transmitRepeat(myrandom());

类别

Help CenterFile Exchange 中查找有关 Analog Devices ADALM1000 Support from Data Acquisition Toolbox 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by