?? master.m
字號(hào):
% ====================== 通信系統(tǒng)的MATLAB仿真 ===================% ===> 程序說(shuō)明如下% 對(duì)這個(gè)仿真程序的總體控制程序% 在master中對(duì)各種參數(shù)進(jìn)行了定義% 關(guān)閉所有窗口,清除所有變量close all;clear all;% 定義產(chǎn)生0,1序列的點(diǎn)數(shù)Nglobal N;N = 1000;% 定義采樣值Mglobal M;M = 8;% 定義滾降系數(shù)ratioglobal ratio;ratio = 0.5;% 定義產(chǎn)生隨機(jī)分布的0,1的分布概率pglobal p;p = 0.5;% 定義載頻系數(shù)fcglobal fc;fc = 4;% 定義濾波器的延遲delayglobal delay;delay = 3;% 產(chǎn)生等概分布的0,1序列sig = signal_generate(p,N);figure(1);stem(1:length(sig),sig,'.');axis([1,50,-0.5,1.5]);xlabel('序列長(zhǎng)度');ylabel('幅度');title('等概分布的0,1序列');% 對(duì)產(chǎn)生的序列進(jìn)行BPSK調(diào)制sig_mod = modulate(sig);figure(2);stem(1:length(sig_mod),sig_mod,'.');axis([1,50,-1.5,1.5]);xlabel('序列長(zhǎng)度');ylabel('幅度');title('經(jīng)過(guò)調(diào)制的信號(hào)序列');% 對(duì)已經(jīng)進(jìn)行BPSK調(diào)制的信號(hào)進(jìn)行插值[sig_insert,sig_insert_length] = insert(sig_mod,M);figure(3);subplot(211);stem(1:length(sig_mod),sig_mod,'.');axis([1,50,-1.5,1.5]);xlabel('序列長(zhǎng)度');ylabel('幅度');title('序列插值前后比較');subplot(212);plot(sig_insert_length/M,sig_insert,'r- .');hold on;plot(sig_insert_length/M,sig_insert,'.');axis([0,50,-1.5,1.5]);xlabel('序列長(zhǎng)度');ylabel('幅度');% 畫出Matlab自帶升余弦低通濾波器Fs = M;Fd = 1;[flt_rcos, den] = rcosine(Fd,Fs,'normal',0.5,delay);figure(4);stem(1:length(flt_rcos),flt_rcos,'.');grid on;xlabel('序列長(zhǎng)度');ylabel('幅度');title('Matlab自帶升余弦濾波器');% 畫出自制升余弦濾波器的圖形Ts=1;dt=Ts/M;t=-3*Ts:dt:3*Ts;xt=sinc(t/Ts).*(cos(ratio*pi*t/Ts))./(1-4*ratio^2*t.^2/Ts^2+eps);figure(5);stem(t,xt,'.');axis([-3 3 -0.2 1.2]);xlabel('序列長(zhǎng)度');ylabel('幅度');title('自制升余弦滾降波形');% 計(jì)算經(jīng)過(guò)插值以后的序列與Mathal自帶升余弦低通濾波器卷積的結(jié)果sig_rcos_own = conv(flt_rcos,sig_insert);% 計(jì)算信號(hào)經(jīng)過(guò)Matlab自帶升余弦低通濾波器后的結(jié)果sig_flt_own = rcosflt(sig_insert,Fd,Fs,'filter/Fs',flt_rcos,den,3);% 計(jì)算構(gòu)造升余弦低通濾波器與輸入信號(hào)乘積的時(shí)域疊加結(jié)果sig_ht_cov = zeros(1,8*N+2*length(xt));for sig_i = 1:8:N ht_i = 1:length(xt); sig_temp = zeros(1,8*N+2*length(xt)); sig_temp(ht_i+sig_i-1) = xt(ht_i).*sig_insert(sig_i); sig_ht_cov = sig_ht_cov+sig_temp;end% 畫圖開始figure(6);subplot(311);plot(sig_rcos_own);axis([0,100,-2,2]);title('信號(hào)與Matlab自帶升余弦低通濾波器卷積后的結(jié)果');ylabel('幅度');xlabel('序列長(zhǎng)度');subplot(312);plot(sig_flt_own);axis([0,100,-2,2]);title('信號(hào)經(jīng)過(guò)Matlab自帶升余弦低通濾波器后的結(jié)果');ylabel('幅度');xlabel('序列長(zhǎng)度');subplot(313);plot(sig_ht_cov);axis([0,100,-2,2]);title('信號(hào)與自制升余弦函數(shù)卷積的結(jié)果');ylabel('幅度');xlabel('序列長(zhǎng)度');% 畫眼圖figure(7);hold on;teye = 0:23;for ii = 1:N/3-1 eye(1:24) = sig_flt_own(24*(ii-1)+1:24*(ii-1)+24); plot(teye,eye,'color','green');endhold off;title('BPSK信號(hào)眼圖');xlabel('重疊長(zhǎng)度');ylabel('幅度');% 載波調(diào)制[ sig_mod,t ] = modulate_high(sig_flt_own,fc,M);figure(8);plot(t,sig_mod,'color','red');axis([delay, delay+10, -2.5, 2.5]);xlabel('已調(diào)信號(hào)長(zhǎng)度');ylabel('幅度');title('載波調(diào)制信號(hào)圖')
?? 快捷鍵說(shuō)明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -