Code d'un ofdm avec matlab

Fermé
ramroum - 9 mars 2010 à 01:35
 lyes - 7 mai 2015 à 13:35
Bonjour,
svp j'ai besoin d'un code ofdm sous matlab , je veut un code clasique et simple aide mois svp
A voir également:

1 réponse

modulateur OFDM:
% Nombre d'états de la QAM.  
M = 16;  
% Nombre de porteuses dans le symbole OFDM  
Nb = 64;  
%Nombre de symboles OFDM dans la simulation  
NbSym = 10;  
% Tirage aléatoire d'entiers allant de 0 à M-1  
R = randint(Nb*NbSym,1,M);  
% Mise en constellation QAM.  
[I Q] = qaskenco(R,M);  
X = I+j*Q; scatterplot(X); figure  
% Création signal OFDM  
x = zeros(size(X));  
for ind = 1:NbSym  
% calcul ième symbole OFDM  
symbole=ifft(X((ind-1)*Nb+1:ind*Nb));  
% sauvegarde du symbole ind dans x  
x((ind-1)*Nb+1:ind*Nb) = symbole;  
end  
subplot(2,1,1); plot(real(x))  
title('partie réelle de x')  
subplot(2,1,2); plot(imag(x))  
title('partie imaginaire de x')


Démodulateur OFDM:
% ajout de bruit complexe 
x = x + 0.06*(randn(size(x)) + j*randn(size(x))); 
for ind = 1:NbSym 
% décodage du symbole ind 
y=fft(x((ind-1)*Nb+1:ind*Nb)); 
% sauvegarde du ième symbole décodé 
Xdec((ind-1)*Nb+1:ind*Nb) = y; 
end 
scatterplot(Xdec) 
% décodage des symboles décodés 
Rdec=qaskdeco(real(Xdec), imag(Xdec), M); 
% Calcul du taux d'erreurs symbole 
cnt_err = 0; 
for ind=1:Nb*NbSym 
if Rdec(ind) ~= R(ind) 
cnt_err = cnt_err+1; 
end 
end 
TES = cnt_err / (Nb*NbSym)




(Source : Modulations Multiporteuses : C. ALEXANDRE/ D. LE RUYET)
7
j'ai besoin du programe qui fait la synchronisation d'un signal OFDM à la
0
merci bcp sur le programme
0