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

📄 bpsk.m

📁 一些关于谱分析的matlab程序
💻 M
字号:
clear;
clc;
fc=30*10^6;%载频
rb=10*10^6;%码元速率
t0=1*10^(-6);
fs=160*10^6;
n=fs/rb;%%%%%%一个码元的采样数
num=0;
%for k=1:10
xb=randint(1,100);
x2=xb.*2-1;%%%%%%%%%%%(0,1)—>(-1,1) 
t=1:length(x2)*n;
%%%%%%%%%%数据采样
for i=1:length(x2)
    for j=1:n
        x3((i-1)*n+j)=x2(i);
    end
end
sig=cos(2*pi*fc*t/fs+x3.*pi/2);
x=sig(1:1000);
%x=awgn(x,10,'measured');
%%%%%%%%%幅度谱
%x=hilbert(x1);
[S,rho]=cyclic_cross_periodogram(x,x,64,'hamming','hamming',1);
N=64;
f=linspace(-0.5,0.5,N+1);
alpha=linspace(-0.5,0.5,N+1);
mesh(alpha,f,S)
xlabel('alpha/Hz');
ylabel('f/Hz');
zlabel('Amplitude');
S1=rho(floor(N/2),:)';
m1=max(rho*S1);
S2=S1/m1;%信号的归一化循环谱密度
[S3,index1]=max(S2);%提取S2的最大峰值
m=mean(S2);%计算S2的均值
for k=1:N
    S4(k)=k*S2(k);
end
S5=sum(S4);
S6=sum(S2);
index2=S5/S6;%S2的中心位置
d=abs(index2-index1);%index1是S2峰值位置,d为S2的中心位置和峰值位置的差的绝对值
p=S2;%alpha轴上的周期谱线
s=sum(p.*p)/N;%Sx在alpha轴上的周期谱线平均能量S
v=sqrt(s-(sum(p)/N)^2);%标准偏差
k=mean(S2.^3)/v^3;%S2的偏度系数
for i=1:N
    for j=1:N
if rho(i,j)==1
    rho(i,j)=0;
end
    end
end
[rho1,index3]=max(max(rho));%rho的次大值
if rho1<0.99&r3>0.15&Smax>0.5&m>0.1
    num=num+1;
end
%end

⌨️ 快捷键说明

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