编辑: 鱼饵虫 | 2019-07-17 |
1πand duration of
300 samples, that is ,0≤nZ/3;
设置一个门限,滤除噪声 r3=xor(r2,r)解调 i=1:M;
r4=s(i)~=r3(i)检测 (当不等时取1 且计入r4 当相等时取0 不计入r4) r5=length(find(r4));
%计算错误的个数(计算r4中元素取1的个数) cc(k)=r5/M;
错误的概率 i=1:M;
me=0;
me=me+g(i).^2;
计算信号的总能量 mp=me/M;
计算信号的平均功率 j=1:M;
se=0;
se=se+q(j).^2+re(j).^2;
%计算噪声的总能量 sp=se/M;
计算噪声的平均功率 sn(k)=mp/sp;
计算信噪比 %不加PN序列 h=s*Z;
原始信号乘幅度因子 x2=h+re+q;
信号序列加正弦信号和噪声信号(不与PN序列调制) r6=x2>Z/3;
设置一个门限,滤除噪声 i=1:M;
r7=s(i)~=r6(i)检测 (当不等时取1 且计入r7 当相等时取0 不计入r7) r8=length(find(r7));
%计算错误的个数(计算r7中元素取1的个数) cd(k)=r8/M;
错误的概率 i=1:M;
ma=0;
ma=ma+h(i).^2;
计算信号的总能量 md=ma/M;
计算信号的平均功率 j=1:M;
sa=0;
sa=sa+q(j).^2+re(j).^2;
%计算噪声的总能量 st=sa/M;
计算噪声的平均功率 sd(k)=md/st;
计算信噪比 end figure;
stem(sn,cc,输出有PN序列的图 hold on;
stem(sd,cd,'-r'输出没有PN序列的图 xlabel('信噪比');
ylabel('差错率');
title('信噪比与差错率曲线' grid %打开网络线 function [s]=randout(M) n=0:M;
s=rand(1,M)1*M的0--1的均匀分布的随机数矩阵 j=1:M;
s(j)=s(j)>0.5;
使每个元素的值大于0.5 function [p_s]=pn(n,M) a=zeros(1,n)1*n的零矩阵 a(n)=1;
令第n列数为1 for i=1:1000 y(i)=a(n);
temp=mod(a(n-1)+a(n),2);
%除法求余(与除数同号) for j=n:-1:2 a(j)=a(j-1)改变a(n)序列 end a(1)=temp;
改变a(n)序列 end p_s=y(1:M)取a(n)序列的最后一位元素生成pn序列 function [in]=sinout(A,w0,M) j=1:M;
in=A*sin(w0*j);
function [w]=wout(M) w=rand(1,M)1*M的0--1的均匀分布的随机数矩阵 8.dft8:N=8;
a=1.2;
n=0:7;
xn=a.^n;
Xk=dft8(xn,N);
subplot(3,1,1) stem(n,xn,'.k');
axis([0,8,0,4.5]) subplot(3,1,2) stem(n,abs(Xk),'.k');
axis([0,8,0,10]) subplot(3,1,3) stem(n,angle(Xk),'.k');
axis([0,8,-4.5,4.5]) x1n: N=8;
a=1.2;
n=0:15;
M=2*N;
xn=a.^n;
yn=[xn(:,1)
0 xn(:,2)
0 xn(:,3)
0 xn(:,4)
0 xn(:,5)
0 xn(:,6)
0 xn(:,7)
0 xn(:,8) 0];
Yk=dft8(yn,M);
subplot(3,1,1) stem(n,yn,'.k');
axis([0,16,0,5]) subplot(3,1,2) stem(n,abs(Yk),'.k');
axis([0,16,0,5]) subplot(3,1,3) stem(n,angle(Yk),'.k');
axis([0,16,-4.5,4.5]) x2n: N=8;
a=1.2;
n=0:7;
M=N/2;
xn=a.^n;
m=0:3;
x2n=[xn(:,1) xn(:,3) xn(:,5) xn(:,7)];
X2K=dft8(x2n,M);
subplot(3,1,1) stem(m,x2n,'.k');
axis([0,3,0,1.5]) subplot(3,1,2) stem(m,abs(X2K),'.k');
axis([0,3,0,5]) subplot(3,1,3) stem(m,angle(X2K),'.k');
axis([0,3,-1.5,1.5]) x3n: N=8;
a=1.2;
n=0:7;
M=N/2;
xn=a.^n;
m=0:3;
x3n=[xn(:,2) xn(:,4) xn(:,6) xn(:,8)];
X3K=dft8(x3n,M);
subplot(3,1,1) stem(m,x3n,'.k');
axis([0,3,0,5]) subplot(3,1,2) stem(m,abs(X3K),'.k');
axis([0,3,0,5]) subplot(3,1,3) stem(m,angle(X3K),'.k');
axis([0,3,-4.5,4.5]) x4n: N=8;
a=1.2;
n=0:15;
M=2*N;
xn=a.^n;
x4n=[xn(:,1) xn(:,2) xn(:,3) xn(:,4) xn(:,5) xn(:,6) xn(:,7) xn(:,8) xn(:,1) xn(:,2) xn(:,3) xn(:,4) xn(:,5) xn(:,6) xn(:,7) xn(:,8)];
X4K=dft8(x4n,M);
subplot(3,1,1) stem(n,x4n,'.k');
axis([0,16,0,5]) subplot(3,1,2) stem(n,abs(X4K),'.k');
axis([0,16,0,5]) subplot(3,1,3) stem(n,angle(X4K),'.k');