• 大小: 7.05MB
    文件类型: .7z
    金币: 1
    下载: 0 次
    发布日期: 2023-11-14
  • 语言: Matlab
  • 标签: MZM;  OOK;  BPSK  

资源简介

MATLAB模拟MZM实现OOK和BPSK,可修改为自己需要的高阶调制方式,内有产生的信号的图形(包含幅度和相位信息)和眼图

资源截图

代码片段和文件信息

function [TA_out]=add_noise(T_inA_inmeansigma)
global n
%ampitude=0.04;
    %A_in=sqrt(Power).*exp(i*Phase);
    num_point=length(T_in);
    dt=T_in(2)-T_in(1);
    dw=2*pi/dt/num_point;
    W=(-(num_point/2):(num_point/2-1))*dw;
    Fft_A_in=fftshift(fft(A_in));
    %Fft_A_out=Fft_A_in+normrnd(meansqrt(sigma)1num_point);
    nn=1:num_point;
    a=-0.05/((num_point)^2);
    b=num_point/2;
    c=sigma;
    enve=(a*(nn-b).^2+c)/10;
%     figure
%     plot(nnenve)
    rand(‘state‘sum(100*clock));
    Fft_noise=enve.*(normrnd(meansqrt(sigma)1num_point));
    Fft_A_out=Fft_A_in+Fft_noise;
    
    T=T_in;
    
    figure
%     subplot(211)
%     plot(Wabs(Fft_A_out).^2*dt‘r‘);
%     hold on
%     plot(Wabs(Fft_A_in).^2*dt‘b‘);
    
    A_out=ifft(ifftshift(Fft_A_out));
   
%     subplot(212)
    plot(T_inabs(A_out)‘r‘‘LineWidth‘3)
    hold on
    plot(T_inabs(A_in)‘-b‘‘LineWidth‘3)
    axis([max(T_in)-n*64*dt max(T_in) -0.02 0.15])

评论

共有 条评论