?? bpsk_demod.m
字號(hào):
%-----雙極性BPSK(相乘法)-----%
clc;
clear;
M=10;%發(fā)送符號(hào)數(shù)
scode=randint(1,M) %發(fā)送bit
scode0=scode; %保存初始bit
flag=find(scode==0);
scode(flag)=-1 %轉(zhuǎn)換成雙極性碼
Tb=1/5;%碼元寬度
f0=1600;%載波頻率
fs=10*f0;%采樣頻率
t=0:1/fs:Tb;%碼元采樣時(shí)間
N=length(t);%碼元采樣點(diǎn)數(shù)
x=cos(2*pi*f0*t);%產(chǎn)生載波信號(hào)
r=[]; %調(diào)制信號(hào)
for i=1:M
dd=(repmat(scode(i),1,N));
source=dd(:)';
r=[r,x.*source] ;
end
plot(r)
u=cos(2*pi*f0*t); %載波恢復(fù)
Wp=200/fs;Ws=900/fs; %Wp:歸一化通帶截止頻率;Ws:歸一化阻帶截止頻率
[n,Wn]=buttord(Wp,Ws,3,40); %返回巴特沃斯低通濾波器最小階數(shù),和截止頻率
[A,B]=butter(n,Wn); %求得濾波器系數(shù)
l=round(N/2); %抽樣判決點(diǎn)
for i=1:M
rr=r((i-1)*N+1:i*N);
rc=filter(A,B,rr.*u); %濾波
out(i)=rc(l); %中值抽樣判決
if out(i)>0
out1(i)=1;
else
out1(i)=-1;
end
end
?? 快捷鍵說(shuō)明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -