How is the number of samples IQ samples calculated while receiving IQ samples from USRP B200?
11 次查看(过去 30 天)
显示 更早的评论
I am using USRP B200 to collect IQ samples using the code given in the matlab central. The paramerters are as following, duration =10, Master clock rate =35e6, Decimation factor 1, samples per frame= 10,000., sample rate= 35e6, frame duration= 10000 (samples). However in each iteration, the rx() function gives only 362 samples (complex samples). I have used step() function as in QPSK receiver example, then also the number of samples is 362.
Question: As per my understanding each frame should give us 10,000 samples if the iteration corresponds to one frame. Why is the number of samples 362?
function [receiveTime,overrunCount] = sdruReceiveData()
Duration = 10;
MasterClockRate = 35e6;
DecimationFactor = 1;
SamplesPerFrame = 10000;
SampleRate = MasterClockRate/DecimationFactor;
FrameDuration = SamplesPerFrame/SampleRate;
Iterations = Duration/FrameDuration;
rx = comm.SDRuReceiver('Platform','B210','SerialNum','30F59A1', ...
'MasterClockRate',MasterClockRate, ...
'DecimationFactor',DecimationFactor, ...
'OutputDataType','double');
count = 0;
rx();
disp('Started Reception...');
tic
for i = 1:Iterations
[data,~,overrun] = rx();
if overrun
count = count+1;
end
end
receiveTime = toc;
overrunCount = count;
release(rx);
end
0 个评论
回答(1 个)
Nadia Shaik
2023-3-7
编辑:Nadia Shaik
2023-3-7
Hi Sreejith,
I understand that you expect the number of samples per frame to be 10,000.
One possible reason for the samples per frame to be 362 can be because of the default value of "SamplesPerFrame" property. The "SamplesPerFrame" property of "comm.SDRuReceiver" is assigned a default value of 362. You can set it programatically to any desired value while creating the "comm.SDRuReceiver" object.
I hope this helps!
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Communications Toolbox 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!