1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
| %Paramètre:
fs = 260e3; % Fréquence d'échantillonnage
T = 200e-6; % Période d'un bit
Nbits = 30; % Nombre de symboles = Nbr de bits
dt = 1/fs;
N = round(T*fs); % Taux d'échantillonnage
f0 = 32e3; % Fréquence porteuse
t=0:dt:(Nbits*N-1)*dt; %Axe du temps
fft_size = 512;
df= fs/fft_size;
f=0:df:fs/2-df; % Axe de fréquence
t2=0:dt:(Nbits*N-53)*dt; %Axe du temps
rand('state',123456789);
data_tx = rand (1,Nbits)>0.5;
data_tx = 2 * data_tx - 1; % bipolaire
b=[1 1];
prc = filter(b, 1, data_tx);
prc = prc(2:end);
sig_tx = upsample (prc , N);
SP_prc = spectre (sig_tx, fft_size); % spectre est une fct qui permet de tracer le spectre
%==== Mise en forme
n=8; %Ordre du filtre
fc = 2.5e3; % Frequence de coupure
[b ,a] = butter (n, fc*2/fs);
sig_duo = filtfilt(b,a,sig_tx); |
Partager