当前位置:首页 > 标准实验报告(4)
subplot(413)
plot(fftshift(abs(fft(ask.^2)))); grid on;
title('ASK的二次方谱'); subplot(414)
plot(fftshift(abs(fft(ask.^4)))); grid on;
title('ASK的四次方谱');
2.BPSK
fc=200;%载波频率
fs=2000;%采样频率 fb=200;%Tb比特周期 fd=200;%符号速度 T=2;%时间长2S M=2;%二元
%% 产生产生0,1序列或符号序列 m=randi([0,1],1,fs);
%% 相位映射为复基带信号 a=pskmod(m,M);
%% 基带消息
t=0:length(a)-1;
x=cos(2*pi*fc*t+angle(a));%生成 BPSK
%% 根升余弦成型滤波器 NT=60; r=0.3;
rate=fs/fb;%过采样率=fs/码速率 delay=NT/(2*rate);
xBPSK=rcosflt(x,fd,fs,'sqrt',r,delay);%波形成型
%% 画图 figure(1) subplot(411) plot(xBPSK);
axis([0 2000 -1 1]); grid on;
title('BPSK时域波形图'); subplot(412)
plot(fftshift(abs(fft(xBPSK)))); grid on;
title('BPSK频域波形图'); subplot(413)
plot(fftshift(abs(fft(xBPSK.^2)))); title('BPSK信号二次方谱'); subplot(414)
plot(fftshift(abs(fft(xBPSK.^4)))); title('BPSK信号四次方谱');
3.QPSK clear all;
close all; clc;
fc=200;%载波频率 fs=2000;%采样频率 fb=100;%Tb比特周期 fd=200;%符号速度 T=2;%时间长2S M=4;%四元 N=T*fs; r=fs/fd;
filtorder = 60; %滤波器阶数60 a=0.3; %滚降因子0.3
delay = filtorder/(r*2); h=rcosfir(a, delay, r,1,'sqrt'); h=sqrt(r)*h/norm(h);
s=randsrc(N,1,[0:M-1]); p=pskmod(s,M); x_base=zeros(r,N); x_base(1,:)=p.'; x_base=x_base(:); ss=conv(h.',x_base);
X_QPSK=x_base.*exp(j*(2*pi*fc/fs*[0:length(x_base)-1].'+rand*2*pi));%
figure(1) subplot(411) plot(real(X_QPSK)); axis([0 500 -1 1]); title('QPSK时域波形图'); grid on; subplot(412)
plot(fftshift(abs(fft(X_QPSK)))); title('QPSK频域波形图'); grid on; subplot(413)
plot(fftshift(abs(fft(X_QPSK.^2)))); title('QPSK二次方谱');
grid on; subplot(414)
plot(fftshift(abs(fft(X_QPSK.^4)))); title('QPSK四次方谱'); grid on;
4.FSK
% 因为调频指数为0.6 中心频率为400Hz,可以计算出f1 f2; fc=(f1+f2)/2
h=(f2-f1)/fb fc=400; %载波频率 fs=1200; %采样频率 fb=200; %Tb比特周期 fd=200; f2=460; f1=340; T=2;
%% 生成an bn 随机序列
a=randi([0,1],1,T*fs); %产生二进制码元 N=length(a); b=zeros(1,N); for i=1:N b(i)=1-a(i); end
%% 根升余弦成型滤波器 NT=60; r=0.3;
rate=fs/fb;%过采样率=fs/码速率 delay=NT/(2*rate); t=0:1/fs:T-1/fs;
c=a.*exp(j*2*pi*f1*t)+b.*exp(j*2*pi*f2*t); fskk=rcosflt(c,fd,fs,'sqrt',r,delay);%波形成型
figure(1) subplot(411) plot(real(fskk)); axis([0 2000 -1 1]); grid on;
title('FSK时域波形'); subplot(412)
plot(fftshift(abs(fft(fskk)))); grid on;
title('FSK的频域波形'); subplot(413)
plot(fftshift(abs(fft(fskk.^2)))); grid on;
title('FSK二次方谱'); subplot(414)
plot(fftshift(abs(fft(fskk.^4)))); grid on;
title('FSK四次方谱');
(2)谱峰个数的提取
方法(1)以频谱或二次方谱或四次方谱中的最大值为参考值,设置一个门限,搜索大于该门限以上的谱峰个数
方法(2)以频谱或二次方谱或四次方谱P(f)中的最大值为参考值,记录最大值的位置为pos,选取最大值左右两侧第N个点的谱的幅度值,计算比值
P(pos)R?P(pos?N)?P(pos?N)
设置门限,搜索R大于门限以上的谱峰个数;如果有多个谱峰同时存在,则把幅度最高的谱峰去掉后再依次搜索幅度次高的谱峰。
a)2ASK信号频谱的谱峰个数提取 方法一:ASK的频谱图
共分享92篇相关文档