PSK调制解调-basic



clear all;
clc;
close all;

%Send
I=sin(2*pi*linspace(0,4,1000)*1);   %freq=1Hz,sin
Q=cos(2*pi*linspace(0,4,1000)*1);   %freq=1Hz,cos

%moduation , 信息包含在角度差,即为I和Q的相位差,这里相位差由a1,a2搞定
%这里与实际不符合,原因在于asin函数,没有办法求出大于pi相位的相位差
%所以这里实际使用的编码幅度,实际借用了8-PSK的0.707

%这里比如说4相位PSK编码,即
%img  x  y   a1     a2      fa
%1    0  0   1     0.707   -0.25
%2    0  1   1      -1     -0.5
%3    1  0   -1      1      0.5
%4    1  1  0.707  -0.707  -0.25     


a1=1;
a2=0.707;
imgS=1

S1=a1.*I; 
S2=a2.*Q;
S=S1+S2;  %传输信号为一个混合信号

%encode
fEn=[asin(S1);asin(S2)];
deltaEn = fEn(1,:)-fEn(2,:);
faEn = deltaEn(1)/pi

%plot
subplot(411);
plot(I,'r');
hold on;plot(Q,'m');
subplot(412);
hold on;plot(S1,'*b');
hold on;plot(S2,'ok');
subplot(413);
hold on;plot(S,'k');

%Receive
I=sin(2*pi*linspace(0,4,1000)*1);   %freq=1Hz,sin
Q=cos(2*pi*linspace(0,4,1000)*1);   %freq=1Hz,cos

%接收信号要提取相位差
Z1=S.*I;   %恢复I部分
Z2=S.*Q;   %恢复Q部分

%这里是需要一个低通滤波器
subplot(414);
plot(Z1,'*b');
hold on;plot(Z2,'ok');

%decode
fDe=[asin(Z1);asin(Z2)];
deltaDe = fDe(1,:)-fDe(2,:);
faDe = deltaDe(1)/pi

%最后这里就是检查码元的对应表,转义信息
%if( (int32)faDe==-0.2500 ) 
%    imgD = 1 
%end;

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值