当前位置:首页 > 实验二 白噪声信道实验
grid on;
附文件2:
bt=0; %开始时间 dt=0.01; %时间间隔
N=4096; %傅立叶变换点数 et=bt+N*dt-dt; %结束时间 t=bt:dt:et; %时间域
TT=et-bt; %总的时间 nt=-TT/2:dt:TT/2;
y = sin(2*pi*10*t); %待分析的信号 df=1/TT; %频率间隔
Tf=N*df %分析的频宽 f=-Tf/2+df:df:Tf/2; %频率域 figure(1);
subplot(3,2,1); plot(t,y); title('信号');
xlabel('时间(s)'); axis([0 2 -1.1 1.1]); grid on;
Y =fftshift(fft(y,N)); subplot(3,2,2); plot(f,abs(Y)); title('频谱');
xlabel('频率(Hz)');
axis([-30 30 min(abs(Y)) max(abs(Y))]); grid on;
y=sin(2*pi*10*t)+0.5*randn(1,length(t)); subplot(3,2,3); plot(t,y);
title('加噪信号'); xlabel('时间(s)');
axis([0 2 min(y) max(y)]); grid on; Y =fft(y,N); subplot(3,2,4);
plot(f,abs(fftshift(Y))); title('加噪频谱'); xlabel('频率(Hz)');
axis([-30 30 min(abs(Y)) max(abs(Y))]); grid on;
9
fs=10; B=2;
pf=zeros(1,length(f));
pf(length(f)/2+round((fs-B)/df):length(f)/2+round((fs+B)/df))=1; pf(length(f)/2-round((fs+B)/df):length(f)/2-round((fs-B)/df))=1; Y=Y.*fftshift(pf); y=ifft(Y); subplot(3,2,5); plot(t,real(y)); title('去噪信号'); xlabel('时间(s)');
axis([0 2 min(real(y)) max(real(y))]); grid on;
subplot(3,2,6);
plot(f,abs(fftshift(Y))); title('去噪频谱'); xlabel('频率(Hz)');
axis([-30 30 min(abs(Y)) max(abs(Y))]); grid on;
附文件3: m=1;
n=10000;
a=rand(m,n); %产生n×m的均匀分布的随机数 for i=1:length(a)
if a(i)>0.5 b(i)=1; %产生m×m的双极性信号 else b(i)=-1; end; end;
S=1; %信号功率 snr=-8:2:8 %信噪比(dB) SNR=exp(snr*log(10)/10); for l=1:length(snr)
N=S/SNR(l); %噪声功率 rk=b+sqrt(N)*randn(m,n); %加上高斯白噪声
dec=sign(rk); %判决,大于0判为1,小于0判为-1 err(l)=sum(abs(dec-b)/2)/length(b); %计算总的误码率 end;
semilogy(snr,err,snr,err,'+'); title('误码率');
xlabel('信噪比(dB)'); ylabel('误码率');
10
11
共分享92篇相关文档