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

📄 cw_sgnl.m

📁 matlab中实现雷达信号处理.rar
💻 M
字号:
% cw_sgnl.m - prepares a periodic signal repeated 16 times% written by Nadav Levanon%for use with "cross_ambfn2.m" plotting codesig_flag=input(' Signal: Frank16=0, P4=1, Golomb15=2, sinusoidal-FM=3, triangular-FM=4, sawtooth-FM=5;  = ? ' );if sig_flag==0    f1=[0 0 0 0 0 .5 1 -.5 0 1 0 1 0 -.5 1 .5];    elseif sig_flag==1        mp4=input(' code length = ? ');        k=1:mp4;        f1=-1/mp4*(k-1).^2+(k-1);    elseif sig_flag==2        alfa=acos(-7/8);        f1=[0 0 0 0 alfa alfa alfa 0 alfa alfa 0 0 alfa 0 alfa]./pi;        mp4=15;    elseif sig_flag==3        df_fm=input('Df/fm= ? ');        mp4=input('frequency vector length = ? ');        k=1:mp4;        f1= 0.5/mp4*df_fm*sin(2*pi/mp4*(k-1));  % this is frequency not phase    elseif sig_flag==4       df_tr=input('Df*Tr= ? ');        mp4=input('frequency vector length (even) = ? ');        k1=1:mp4/2;  k2=mp4/2+1:mp4;        f1_a=2/mp4^2*df_tr*(k1-mp4/4);        f1_b=-2/mp4^2*df_tr*(k2-3*mp4/4);        f1=[f1_a  f1_b];    elseif sig_flag==5       df_tr=input('Df*Tr= ? ');        mp4=input('frequency vector length (odd) = ? ');        k1=1:mp4;          f1=-1/mp4/(mp4-1)*df_tr*(-k1+(mp4+1)/2);endf4=[f1 f1 f1 f1];f4=[f4 f4 f4 f4];  %  N=16lf=length(f4);lfsingle=length(f1);f4_3=[f4 f4 f4];u_amp0=zeros(size(f4));u_amp1=ones(size(f4_3));weight_flag=input(' Inter-period weight: uniform=0, Hamming=1,  Hann=2; = ? ');if weight_flag==0    u_amp_mid=ones(1,lf);elseif weight_flag==1    u_amp_mid=hamming(lf)';elseif weight_flag==2    u_amp_mid=hann(lf)';endint_weight_flag=input(' Intra-period weight: uniform=0, Hamming=1,  Hann=2;  = ?  ');if int_weight_flag==1        rw=hamming(lfsingle)';        rwn=[rw rw rw rw rw rw rw rw rw rw rw rw rw rw rw rw];        u_amp_mid=u_amp_mid.*rwn;elseif int_weight_flag==2        rw=hann(lfsingle)';        rwn=[rw rw rw rw rw rw rw rw rw rw rw rw rw rw rw rw];        u_amp_mid=u_amp_mid.*rwn;endu_amp_ref=[ u_amp0   u_amp_mid  u_amp0];sig_trans=u_amp1.*exp(j*pi*f4_3);sig_ref=u_amp_ref.*exp(j*pi*f4_3);t_freq=0:length(f4_3)-1;if sig_flag==3    sig_trans=u_amp1;    sig_ref=u_amp_ref;end% Adding doppler equivalent phase ramp in the reference phase slopedop_flag=input('Add Doppler compensation  (no = 0, yes = 1)  = ? ');if dop_flag==1    mult=input(' Dphi*M/pi = ? ');    dphi=mult*pi/length(f1);    num_phase_steps=0:length(f4_3)-1;    phase_ramp=dphi*num_phase_steps;    sig_ref=sig_ref.*exp(j*phase_ramp);enddisp(' ')disp('  Call "cross_ambfn2" ')disp('  For "signal elements" use "sig_trans" and for "2nd signal elements" use "sig_ref"  ')disp('  If an FM signal: for freq coding use "f4_3" ')disp(' ')disp('  To plot two periods of the Periodic Cross Amb. Func.  ')disp('  set maximal delay ... = 0.024 ')disp(' ') 

⌨️ 快捷键说明

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