close all;
clear all;
%---------------
%产生模拟信号
%%****信号参数*****
Rd=1e6; %码元速率
M=4; %码元符号表示的进制数
k=log2(M);%码元符号表示的信息量(bit)
n=10e3; %要处理的比特流数量
fs=95e6;%采样速率
fc=70.1e6;%载波
nsamp=round(fs/Rd);%每个码元的采样点
%%***生成数字信号源(二进制码)*******
x=randint(n,1); %比特流
xsym=reshape(x,k,n/k);
clear x;
xsym=bi2de(xsym.','left-msb');
%%***QPSK调制********
y = dmodce(xsym,1,1,'psk/opt',M);%y = dmodce(x,Fd,Fs,...)
% y=pskmod(xsym,M,pi/4);
clear xsym;
%%信号成形滤波
rolloff=0.3; %滚降系数
delay=4; %群时延
ym=rcosflt(y,Rd,fs,'fir',rolloff,delay)*sqrt(2);
clear y;
%载波发送
t=[1:length(ym)].'/fs;
ytx=real(ym).*cos(2*pi*fc*t)+imag(ym).*sin(2*pi*fc*t);
clear ym;
%%信号经过信号通道
snr=15; %dB
ytx=awgn(ytx,snr,'measured');