main.m
资源名称:rcfilter.zip [点击查看]
上传用户:hzpaint
上传日期:2021-02-07
资源大小:2k
文件大小:2k
源码类别:
Modem编程
开发平台:
Matlab
- global dt t df N
- close all
- %k=input('取样点数=2^k, k取13左右');
- %if isempty(k), k=13; end
- %z=input('每个信号取样点数=2^z, z<k');
- %if isempty(z), z=5; end
- %aa=input('滚降系数=[0.5]');
- %if aa==[],aa=0.5;end
- k=13;
- z=5;
- aa=0.5;
- N=2^k;
- L=2^z;M=N/L;
- Na=4; %示波器扫描宽度为4个码元
- Rb=2; %码速率是2Mb/s
- Ts=1/Rb; %码元间隔
- dt=Ts/L; %时域采样间隔
- df=1/(N*dt); %频域采样间隔
- T=N*dt; %截短时间
- Bs=N*df/2; %系统带宽
- f=[-Bs+df/2:df:Bs]; %频域横坐标
- t=[-T/2+dt/2:dt:T/2]; %时域横坐标
- g=sin(pi*t/Ts).*cos(pi*t*aa/Ts)./[pi*t/Ts.*(1-4*t.^2*aa^2/Ts^2)];%升余弦脉冲波形
- GG=t2f(g);
- EP=zeros(size(f))+eps;
- for ii=1:30
- b=sign(randn(1,M))+1; %发送码元取值为0、2
- s=zeros(1,N); %产生冲激序列
- s(L/2:L:N)=b;
- SS=t2f(s);
- S=SS.*GG; %升余弦信号的傅氏变换
- a=f2t(S); %升余弦信号的时域波形
- a=real(a);
- P=S.*conj(S)/T; %升余弦信号的功率谱
- EP=(EP*(ii-1)+P+eps)/ii;
- figure(1) %输出的功率画图
- plot(f,10*log10(EP),'b');
- grid
- axis([-3,+3,-100,20])
- xlabel('f (KHz)');ylabel('Ps(f) (dBm/MHz)') ;title('功率谱图')
- figure(2)
- hold on
- tt=[0:dt:Na*L*dt]; %系统的眼图画图
- for jj=1:Na*L:N-Na*L
- end
- plot(tt,a(jj:jj+Na*L));title('升余弦滚降波形的眼图');
- end