ssb调制解调matlab仿真设计,单边带SSB调制解调的MATLAB仿真

41528d3028836879cd698677c3999917.gif单边带SSB调制解调的MATLAB仿真

预先设计的滤波器: LPF: HSSB: 1、调制程序 function myfun() %采用滤波法产生SSB信号 Fs=44100;%采样频率44100HZ k1=( k1= );%调制信号的参数k1 fc=20000;%载波频率设定为20000HZ; Fc=2000;%调制信号的频率 t=0:1/Fs:1;%采样时间 m=k1*sin(2*pi*Fc*t);%产生调制信号 subplot(2,1,1); plot(m); xlabel( 时间t ); ylabel( 调制信号m(t) );%做出调制信号的图 SDSB=m.*cos(2*pi*fc*t);%产生双边带调制信号 SSB=conv(HSSB,SDSB);%让双边带信号通过预先设计好的HSSB带通滤波器); subplot(2,1,2); plot(SSB); xlabel( f ); ylabel( 已调信号SSB(t) ); sound(SSB,44100);%通过声卡发送已调信号 end 2、 在没有音频线传输信号时,模拟信道噪声程序 SNR=40;%设定模拟信道信噪比 SSB1=awgn(SSB,SNR);%加入模拟信道高斯白噪声 3、 解调程序 function myfun() %采用相干解调解调SSB信号 Fs=44100;%采样频率44100HZ fc=20000;%载波频率设定为20000HZ; t=0:1/Fs:1;%采样时间 SSB1=wavrecord(44101,44100);%通过声卡接收信号 subplot(3,1,1); plot(SSB1); xlabel( t ); ylabel( 通过声卡的接收信号 );%作图 S=conv(SSB1,HSSB);%让接收到的信号通过带通滤波器 subplot(3,1,2); plot(S); xlabel( t ); ylabel( 通过带通滤波器后的接收信号 );%作图 ii=1; S1=ones(1,44101); while ii<=44101 S1(ii)=S(ii); ii=ii+1; end %通过循环截取前面的44101个数据点 S2=conv(LPF,S1.*cos(2*pi*fc*t));%解调的核心程序 subplot(3,1,3); plot(S2); xlabel( t ); ylabel( 解调后的信号 );%作图 end

你可能感兴趣的:(ssb调制解调matlab仿真设计,单边带SSB调制解调的MATLAB仿真)