📄 test_signal.m
字号:
%******************************************************************************
% test_signal.m
%
% Use: Code to generated a single tone test signals
%
% Inputs: Amplitud of the carrier signal
% Carrier signal frequency - f (Hz)
% Sampling frequency - fs (HZ)
%
%
%
%
%
%Output: In-phase (I) and Quadarture (Q) components of the signal
% Plots
clear all;
clc;
disp('*******************************************');
disp('*****************TEST SIGNAL*****************');
disp('**********************************************');
%MAIN MENU
disp(' ')
disp('WHAT KIND OF TEST SIGNAL DO YOU WANT TO GENERATE ? ')
disp(' ')
disp('1. Test signal with a single frequency ');
disp('2. Test signal with two frequencies ');
disp('3. Go back to LPI Generator ');
disp(' ')
option= input('Select a option: ');
%AMPLITUDE IN VOLTS
A = 1;
%MENU FOR SINGLE FREQUENCY TEST SIGNAL
switch option
case 1
disp(' ');
disp('You have selected a Test signal with a single frequency');
disp(' ');
f1 = input('Enter carrier frequency - f1(Hz): ');
fs = input('Enter sampling frequency - fs (Hz): ');
T=1/fs;
t=0:T:999*T;
s = A*cos(2*pi*f1*t) + j*A*sin(2*pi*f1*t);
figure
hold;
plot(t(1:10),real(s(1:10)));
plot(t(1:10),imag(s(1:10)),'r');grid;
title(['Test Signal S(t) = Cos[2(pi)(f1)t] + jSin[2(pi)(f1)t]: frequency (f1) =', num2str(f1) ' Sampling Frequency(fs)= ' num2str(fs)]);
xlabel('{\itTime - Seconds} ');
ylabel('Amplitude');
legend('Real Part', 'Imag. Part');
hold;
figure;
psd(s,[],fs)
title('Power Spectrum Density');
disp(' ')
saveresult = input('Do you want to save the new signal (Y/y or N/n) ?','s');
if (saveresult == 'Y') | (saveresult =='y')
I = real(s)';
Q = imag(s)';
ff=floor(f1/1e3);
ffs=floor(fs/1e3);
save(['T_' num2str(ff) '_' num2str(ffs) '_1_s'],'I','Q');
disp('The signals has been saved');
disp(' ');
disp(['Signal only save as : T_' num2str(ff) '_' num2str(ffs) '_1_s']);
disp(['Directory: ' num2str(cd)]);
else
disp(' ')
disp('Signal not saved')
fprintf('\n\n')
end
%MENU FOR TWO FREQUENCY TEST SIGNAL
case 2
disp('You have selected Test signal with two frequencies');
disp(' ');
f1 = input('Enter carrier frequency - f1 (Hz): ');
f2 = input('Enter carrier frequency - f2 (Hz): ');
fs = input('Enter sampling frequency - fs (Hz): ');
T=1/fs;
t=0:T:999*T;
s = A*cos(2*pi*f1*t) + j*A*sin(2*pi*f1*t) + A*cos(2*pi*f2*t+.15) + j*A*sin(2*pi*f2*t+.15);
figure
hold;
plot(t(1:10),real(s(1:10)));
plot(t(1:10),imag(s(1:10)),'r');grid;
title(['Test Signal S(t) = Cos[2(pi)(f1)t] + jSin[2(pi)(f1)t] + Cos[2(pi)(f2)t] + jSin[2(pi)(f2)t], f1 =' num2str(f1) ' f2=' num2str(f2) ' fs=' num2str(fs) ]);
xlabel('{\itTime - Seconds} ');
ylabel('Amplitude');
legend('Real Part', 'Imag. Part');
hold;
figure;
psd(s,[],fs)
title('Power Spectrum Density');
disp(' ')
saveresult = input('Do you want to save the new signal (Y/y or N/n) ?','s');
if (saveresult == 'Y') | (saveresult =='y')
I = real(s)';
Q = imag(s)';
ff=floor(f1/1e3);
fff=floor(f2/1e3);
ffs=floor(fs/1e3);
save(['T_' num2str(ff) num2str(fff) '_' num2str(ffs) '_2_s'],'I','Q');
disp('The signals has been saved');
disp(' ');
disp(['Signal only save as T_' num2str(ff) num2str(fff) '_' num2str(ffs) '_2_s']);
disp(['Directory: ' num2str(cd)]);
else
disp(' ')
disp('Signal not saved')
fprintf('\n\n')
end
case 3
lpig;
end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -