demod2psk.m

来自「基于MATLAB的2PSK调制,调制解调部分源文件」· M 代码 · 共 34 行

M
34
字号
function [ qmout,imout]=demodqpsk(Input)

%SNR=1.5;
%Multi=4;
%coe[4]=[0.7 0.7 0.5 1.232];
%location[4]=[0 1 2 3];
%Input=Channelmodnoise(Input,Multi,Coe,location,SNR);

Input_buflen=length(Input);
fs=160000; %采样频率
fc=56000;  %载波频率
nn=10;     %每个码元的采样点数nn

w=2*pi*fc/fs;
N=150;
F=[0,0.2,0.2,1];
A=[1,1,0,0];
LF_Coefficient=firls(N,F,A);
for i=1:Input_buflen
   Out_Cos_Demod8PSK(i)=Input(i)*cos(w*i);
   Out_Sin_Demod8PSK(i)=Input(i)*sin(w*i);
end
Out_Cos_LF=2*conv(LF_Coefficient,Out_Cos_Demod8PSK);
Out_Sin_LF=2*conv(LF_Coefficient,Out_Sin_Demod8PSK);
%Qm,Im 是两路输出
Qm=Out_Cos_LF(75+1:Input_buflen+75);
Im=Out_Sin_LF(75+1:Input_buflen+75);
qmout=zeros(1,Input_buflen/nn);
imout=zeros(1,Input_buflen/nn);
for i=1:Input_buflen/nn
   imout(i)=Im((i-1)*nn+nn/2+1);
   qmout(i)=Qm((i-1)*nn+nn/2+1);
end

⌨️ 快捷键说明

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