
Добавил:
menson13
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:лаба 1
.m % main.m
pkg load signal;
Fs =9600;
function wave = smaptowave (wave1)
wave1=upsample(wave1,100);
wave=filter(ones(1,100),1,wave1);
endfunction
function wave = ami (wave2)
am=mod(1:length(wave2(wave2==1)),2);
am(am==0)=-1;
wave2(wave2==1)=am;
wave= smaptowave(wave2);
endfunction
%задаем входную кодовую последовательность:
data=[ 1 1 1 0 0 0 0 0 0 1 1 0 1 0 0 1 0 0 0 0 0 1 0 1 0 0 1 0 1 1 1 0 ];
%вывод исходных данных
figure('Position',[100 100 400 300])
plot(data)
title('Исходные данные');
grid on
wave=ami(data); %кодировка
%вывод закодированных данных (ami)
figure('Position',[100 100 400 300])
plot(wave)
title('AMI');
grid on
T=1/Fs;t=T/length(wave);
n=0:t:T-t;
n1=n(1):1:n(end);
%расчет спектра
spec=fft(wave);
spec2=abs(fft(wave));
spec2=spec2/length(spec2);
fc=0:Fs/length(spec2):Fs-Fs/length(spec2);
figure('Position',[100 100 400 300])
bar(fc,spec2)
title('Signal spectrum');
xlabel('Frequency , Hz');
ylabel('Amplitude, Volt');
grid on
xlim([0 2000])
%восстановление сигнала с помощью фурье
i=1:1:3200;
a(1,i)=spec(1,i);
si=ifft(a,3200);
figure('Position',[100 100 400 300])
plot(n,wave)
grid on
ylim([-1.2 1.2])
xlim([0 T])
title('Bit sequence');
xlabel('Time, in symbolic time T_s');
ylabel('Signal amplitude');
hold on
plot(n, si)
legend ('Initial signal','Restored signal');
legend('location', 'southoutside');
pkg load signal;
Fs =9600;
function wave = smaptowave (wave1)
wave1=upsample(wave1,100);
wave=filter(ones(1,100),1,wave1);
endfunction
function wave = ami (wave2)
am=mod(1:length(wave2(wave2==1)),2);
am(am==0)=-1;
wave2(wave2==1)=am;
wave= smaptowave(wave2);
endfunction
%задаем входную кодовую последовательность:
data=[ 1 1 1 0 0 0 0 0 0 1 1 0 1 0 0 1 0 0 0 0 0 1 0 1 0 0 1 0 1 1 1 0 ];
%вывод исходных данных
figure('Position',[100 100 400 300])
plot(data)
title('Исходные данные');
grid on
wave=ami(data); %кодировка
%вывод закодированных данных (ami)
figure('Position',[100 100 400 300])
plot(wave)
title('AMI');
grid on
T=1/Fs;t=T/length(wave);
n=0:t:T-t;
n1=n(1):1:n(end);
%расчет спектра
spec=fft(wave);
spec2=abs(fft(wave));
spec2=spec2/length(spec2);
fc=0:Fs/length(spec2):Fs-Fs/length(spec2);
figure('Position',[100 100 400 300])
bar(fc,spec2)
title('Signal spectrum');
xlabel('Frequency , Hz');
ylabel('Amplitude, Volt');
grid on
xlim([0 2000])
%восстановление сигнала с помощью фурье
i=1:1:3200;
a(1,i)=spec(1,i);
si=ifft(a,3200);
figure('Position',[100 100 400 300])
plot(n,wave)
grid on
ylim([-1.2 1.2])
xlim([0 T])
title('Bit sequence');
xlabel('Time, in symbolic time T_s');
ylabel('Signal amplitude');
hold on
plot(n, si)
legend ('Initial signal','Restored signal');
legend('location', 'southoutside');
Соседние файлы в предмете Сети и системы передачи информации