BPSK調製
%此段代碼實現信號的BPSK調製
%輸入x取值爲0 1 輸出y爲1 -1
function [y]=modbpsk(x)
mapping=[1 -1];
y=mapping(x(:,:)+1);
QPSK調製
%此段代碼實現信號的QPSK調製
%輸入x爲0 1 2 3 輸出y爲1-1i -1+1i 1+1i -1-1i
function [y]=modqpsk(x)
mapping=[1-1i -1+1i 1+1i -1-1i];
y=mapping(x(:,:)+1);
BPSK解調
function [yhat]=demodbpsk(x)
map=modbpsk([0 1]);
for loop=1:length(map)
distance=abs(x-map(loop));
all_distance(loop,:)=distance;
end
[~,index]=min(all_distance);
mapping=[0 1];
yhat=mapping(index);
QPSK解調
function [yhat]=demodbpsk(x)
map=[1+1i -1+1i -1-1i 1-1i];
for loop=1:length(map)
distance=abs(x-map(loop));
all_distance(loop,:)=distance;
end
[~,index]=min(all_distance);
mapping=[0 1 2 3];
yhat=mapping(index);