Not enough input arguments for awgn function

2 vues (au cours des 30 derniers jours)
qianhui zhou
qianhui zhou le 15 Avr 2018
Commenté : qianhui zhou le 15 Avr 2018
Hi,I'm very new to the MATLAB and I just got a question, the code is for generate a random signal and then add a white noise to it:
%define variables
N = 10;
k = 1;
fc = 2000;
%create a random binary stream of N bits
data = randi([0 1],N,1);
%sample at 8 samples/bit (8*N samples)
for i = 1:N
for j = 1:8
y(k) = data(i);
k = k+1;
end
end
%modulate the sampled signal
t = linspace(0,0.8*N,8*N);
z = y.*cos(2*pi*fc*t);
g = awgn(z,snr,'measured');
after that, it tells me:
Error using snr (line 84)
Not enough input arguments.
Does anyone knows How to solve that?

Réponse acceptée

Walter Roberson
Walter Roberson le 15 Avr 2018
awgn() expects you to pass a numeric value for the signal to noise ratio. Instead in that position you mention snr . snr happens to be the name of a function, so MATLAB tries to invoke the function at that point. But the function needs arguments...
You should be assigning a value to snr before you call awgn.

Plus de réponses (0)

Catégories

En savoir plus sur Propagation and Channel Models dans Help Center et File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by