📄 project.m
字号:
function project(N,p)
% N为待仿真序列的维数
% p为产生‘!’的概率
%===========================
%首先产生随机二进制序列
N=input('N=');
p=input('p=');
source=randsrc(1,N,[1,0;p,1-p]);
%s=source(N,p);
%===========================
%对产生的二进制序列进行QAM调制
[source1,source2]=Qam_modulation(source);
%================================
%画出星座图
figure(1);
plot_astrology(source1,source2);
%==============================
%两路信号进行插值(8倍过采样)
sig_insert1=insert_value(source1,8);
sig_insert2=insert_value(source2,8);
%======================================
%画出两路信号的波形图
figure(2);
plot_2way(sig_insert1,sig_insert2,length(sig_insert1),0.5);
title('两路信号波形图');
%=========================================
%通过低通滤波器
[sig_rcos1,sig_rcos2]=rise_cos(sig_insert1,sig_insert2,0.25,2);
%=========================================
%画出两路信号的波形图
figure(3);
plot_2way(sig_rcos1,sig_rcos2,length(sig_rcos1)/4,0.5);
title('通过低通滤波器后两路信号波形图');
hold on
stem_2way(sig_insert1,sig_insert2,3,0.25,2,length(sig_rcos1)/4);
%==========================================
%将基带信号调制到高频上
[t,sig_modulate]=modulate_to_high(sig_rcos1,sig_rcos2,0.25,2.5);
figure(4);
plot(t(1:500),sig_modulate(1:500));
title('载波调制信号图');
%=======================================
%将滤波后的信号加入高斯白噪声
snr=10;
[x1,x2]=generate_noise(sig_rcos1,sig_rcos2,snr);
sig_noise1=x1';
sig_noise2=x2';
figure(5);
plot_2way(sig_noise1,sig_noise2,length(sig_noise1)/4,0.5);
title('加入高斯白噪声的两路信号波形图');
%=================================================
%经过匹配滤波器
[sig_match1,sig_match2]=rise_cos(sig_noise1,sig_noise2,0.25,2);
figure(6);
plot_2way(sig_match1,sig_match2,length(sig_match1)/4,0.5);
title('经过匹配滤波器后');
%===================================================
%采样
[x1,x2]=pick_sig(sig_match1,sig_match2,8);
sig_pick1=x1;
sig_pick2=x2;
%画出星座图
figure(7)
plot_astrology(sig_pick1,sig_pick2);
%解调
%signal=demodulate_sig(sig_pick1,sig_pick2);
%r=signal
%画出
figure(8)
plot_snr;
title('误码率曲线');
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -