标签:ros sha space mat title 反向 The lte idt
相移键控法, 根据数字基带信号的两个电平使载波相位在两个不同的数值之间切换的一种相位调制方法。
产生PSK信号的两种方法:
1)、调相法:将基带数字信号(双极性)与载波信号直接相乘的方法:
2)、选择法:用数字基带信号去对相位相差180度的两个载波进行选择。
两个载波相位通常相差180度,此时称为反向键控(PSK)。
解调方法:只能采用相干解调。
类型:二进制相移键控(2PSK),多进制相移键控(MPSK)。
clear all
close all
i=10;
j=5000;
fc=4;%载波频率
fm=i/5;%码元速率
B=2*fm;
t=linspace(0,5,j);
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%产生基带信号
a=round(rand(1,i));%随机序列,基带信号
st1=t;
for n=1:10
if a(n)<1;
for m=j/i*(n-1)+1:j/i*n
st1(m)=0;
end
else
for m=j/i*(n-1)+1:j/i*n
st1(m)=1;
end
end
end
figure(1);
subplot(511);
plot(t,st1);
title(‘基带信号‘);
axis([0,5,-1,2]);
%%%%%%%%%%%&&&&&&%%%%%%%%%%%%%%%%%产生双极性基带信号
st2=t;
for k=1:j;
if st1(k)>=1;
st2(k)=0;
else
st2(k)=1;
end
end;
st3=st1-st2;%双极性基带信号
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%载波信号
s1=sin(2*pi*fc*t);
subplot(512);
plot(s1);
title(‘载波信号‘);
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%调制
psk=st3.*s1;
subplot(513);
plot(t,psk);
title(‘2PSK信号‘);
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%相干解调
psk=psk.*s1;%与载波相乘
[f,af] = T2F(t,psk);%%%%%%%%%%%通过低通滤波器
[t,psk] = lpf(f,af,B);
subplot(514);
plot(t,psk);
title(‘低通滤波后波形‘);
%脚本文件F2T.m定义了函数F2T,计算信号的反傅立叶变换。
function [t,st]=F2T(f,sf)
%This function calculate the time signal using ifft function for the input
%signal‘s spectrum
df = f(2)-f(1);
Fmx = ( f(end)-f(1) +df);
dt = 1/Fmx;
N = length(sf);
T = dt*N;
%t=-T/2:dt:T/2-dt;
t = 0:dt:T-dt;
sff = fftshift(sf);
st = Fmx*ifft(sff);
function [t,st]=lpf(f,sf,B)
%This function filter an input data using a lowpass filter
%Inputs: f: frequency samples
% sf: input data spectrum samples
% B: lowpass‘s bandwidth with a rectangle lowpass
%Outputs: t: time samples
% st: output data‘s time samples
df = f(2)-f(1);
T = 1/df;
hf = zeros(1,length(f));%全零矩阵
bf = [-floor( B/df ): floor( B/df )] + floor( length(f)/2 );
hf(bf)=1;
yf=hf.*sf;
[t,st]=F2T(f,yf);
st = real(st);
版本:2014a
完整代码或代写加1564658423
【数字信号调制】基于matlab二进制数字相位调制(2PSK)【含Matlab源码 1000期】
标签:ros sha space mat title 反向 The lte idt
原文地址:https://www.cnblogs.com/homeofmatlab/p/14901203.html