📄 dpskdemod.m
字号:
function [idataout,qdataout]=adpskdemod(idatain,qdatain)
phase=0.75*pi;
for i=1:length(idatain);
a=idatain(i);
b=qdatain(i);
if a==0&&b==0
current_phase=0.75*pi;
elseif a==0&&b==1
current_phase=1.25*pi;
elseif a==1&&b==1
current_phase=1.75*pi;
elseif a==1&&b==0
current_phase=0.25*pi;
end
if current_phase<phase
diff_phase=current_phase+2*pi-phase;
else
diff_phase=current_phase-phase;
end
if abs(diff_phase-0)<0.01;
idataout(i)=0;
qdataout(i)=0;
elseif abs(diff_phase-0.5*pi)<0.01;
idataout(i)=0;
qdataout(i)=1;
elseif abs(diff_phase-pi)<0.01;
idataout(i)=1;
qdataout(i)=1;
elseif abs(diff_phase-1.5*pi)<0.01;
idataout(i)=1;
qdataout(i)=0;
end
phase=current_phase;
end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -