⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 generate_signal_data.m

📁 implement basic routines in Matlab and Octave (currently using Matlab R13) for simulating adaptive b
💻 M
字号:
function [interference_data, desired_data, interference_bits, desired_bits, interference_data_downsampled, desired_data_downsampled] = ...
    generate_signal_data(Nsamples, Fc, Fd, Fs, Signal_Power_ABS, Noise_Power_ABS)

%plot(1-(cos(2*pi*(1:(Fs/Fd))/((Fs/Fd)*2))).^10)
mywindow2=1-(cos(2*pi*(1:(Fs/Fd))/((Fs/Fd)*2))).^10;
mywindow=[];
for i=1:Nsamples
    mywindow = [mywindow mywindow2];
end

% Generate the data due to interferers
interference_data = zeros(length(Signal_Power_ABS)-1, Nsamples*Fs/Fd);
interference_bits = zeros(length(Signal_Power_ABS)-1, Nsamples);
interference_data_downsampled = zeros(length(Signal_Power_ABS)-1, Nsamples);
for i=2:length(Signal_Power_ABS)    % Use this if we want frequency offsets for each interferer
   interference_bits(i-1,:) = randint(Nsamples,1,[0,1]).';  % octave change
   interference_data_downsampled(i-1,:) = Signal_Power_ABS(i, i) .* pskmod(interference_bits(i-1,:),2); % octave change
   interference_data_downsampled(i-1,:) = interference_data_downsampled(i-1,:) + Noise_Power_ABS.*(randn(size(interference_data_downsampled(i-1,:))) + j*randn(size(interference_data_downsampled(i-1,:))));
   interference_data(i-1,:) = resample(interference_data_downsampled(i-1,:), Fs, Fd);
   interference_data(i-1,:) = interference_data(i-1,:) .* mywindow;
   size(interference_data(i-1,:))
   size(mywindow)
%    out_r = randint(Nsamples,1,[0,1]);
%    interference_data(i-1,:) = Signal_Power_ABS(i, i) .* dmodce(out_r,Fd,Fs,'psk',2).';
%   out_r = randint(Nsamples,1,[0,3]);
%   interference_data(i-1,:) = Signal_Power_ABS(i, i) .* dmodce(out_r,Fd,Fs,'qask',4).';
end
% Add some noise
if(size(interference_data) ~= 0)
    interference_data = interference_data;% + Noise_Power_ABS*randn(size(interference_data));
end

% Generate the data due to desired source
desired_bits = randint(1,Nsamples,[0,1]); %Data from the desired signal
desired_data_downsampled = Signal_Power_ABS(1, 1) .* pskmod(desired_bits.',2).';
desired_data_downsampled = desired_data_downsampled + Noise_Power_ABS.*(randn(size(desired_data_downsampled))+j*randn(size(desired_data_downsampled)));
desired_data = resample(desired_data_downsampled, Fs, Fd);
desired_data = desired_data .* mywindow;
%desired_bits = (randint(Nsamples,1,[0,3]))'; %Data from the desired signal
%desired_data = Signal_Power_ABS(1, 1) *
%dmodce(desired_bits,Fd,Fs,'qask',4);

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -