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

📄 modulator2.m

📁 Matlab 模拟 CDMA 直接扩频。m序列生成矩阵为p(x) = 1 + x^5 + x^7 + x^8 + x^9 + x^13 + x^15。能画出每阶段的时域、频域图。
💻 M
字号:
%% Made by Zheng Xiao (052815 05b04)%% Group Member: Ji Yue, Sun Xin, Zheng Xiao%clear% Generate Signal%M = 16; %-the number of Sample per Period in input signalN = 32; %-the number of Sample per Period in BPSK Modulated signalM = 64; %-the number of Sample per Period in input signalP1 = [0 5 7 8 9 13 15];P2 = [1 2 3 4 10 12 14];%tk = 0:1/M:(1024/M);%input = sin(2*pi*tk) + cos(pi*tk);%ratio = max(input);%input = input/ratio;% A-law PCM encode% Lengthen PCM code%%pcmCode = [1];%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 1original=[0 1 0]; % User CodenOriginal = length(original);pcmCode=expand_bit(original);%must be 64xN lengthkey1 = genM(M,P1);pcmCode=xor(pcmCode,periodExpand(key1,nOriginal));pcmCode = genBipolar(pcmCode); % 转换为双极性码stem(pcmCode);pause%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 2original2=[1 1 1]; % User CodenOriginal2 = length(original2);pcmCode2=expand_bit(original2);%must be 64xN lengthkey2 = genM(M,P2);pcmCode2=xor(pcmCode2,periodExpand(key2,nOriginal2));pcmCode2 = genBipolar(pcmCode2); % 转换为双极性码stem(pcmCode2);pause%%%%%%%%%%%%%%%%%%%%%%%% FUSION %%%%%%%%%%%%%pcmCode = (pcmCode + pcmCode2);stem(pcmCode);pause%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%npcmCode = length(pcmCode); %-number of total symbolpcmCode = [pcmCode;zeros((N-1),npcmCode)];pcmCode = reshape(pcmCode,1,N*npcmCode);pcmCode = conv(pcmCode,ones(1,N));pcmCode = pcmCode(1:N*npcmCode);% BPSK Modulationtk = 0:1/N:(1-1/N);carrier = sin(4*pi*tk);carrier = padarray(carrier,npcmCode-1,'circular','post');carrier = reshapeSeq(carrier);signal = carrier .* pcmCode; %<= THIS IS THE MODULATED SIGNAL%plot(signal);%%%%% Here comes through the channel %%%%%%=================[Media]================%%NOISEstem(signal);pausesignalIn = addNoise(signal, sqrt(5)/5);stem(signalIn);pause%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 1% BPSK DemodulationsignalIn = signal .*carrier; %<= INPUT SIGNAL OF DEMODULATOR %plot(signalIn)judger = reshapeColumn(signalIn,N);judger = sum(judger,2);judger(find(judger>=0)) = 0; % 转化为单极性judger(find(judger<0)) = 1;judger = judger';nFinal = length(judger)/M;final = xor(judger, periodExpand(key1,nFinal));finalFinal = finalJudge(final,M); % the final outputsubplot(2,1,1)stem(finalFinal);%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 2% BPSK DemodulationsignalIn = signal .*carrier; %<= INPUT SIGNAL OF DEMODULATOR %plot(signalIn)judger = reshapeColumn(signalIn,N);judger = sum(judger,2);judger(find(judger>=0)) = 0; % 转化为单极性judger(find(judger<0)) = 1;judger = judger';nFinal = length(judger)/M;final = xor(judger, periodExpand(key2,nFinal));finalFinal = finalJudge(final,M); % the final outputsubplot(2,1,2)stem(finalFinal);

⌨️ 快捷键说明

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