比如 k表示错误数,信源:input 信宿:output
k=0
for i=1:length(input)
if input~=output
k=k+1
end
end
perror=k/length(input)
您好,您这样:clc
clear
fc=4800fs=12000fb=2400
%要调制的数字信号
a=randint(1,12,2)%随机产生12个“0”,“1”
s=zeros(1,60)
for i=1:12
for j=1:5
if(a(i)==0)
斗裤谈 s(j+(i-1)*5)=0
else
s(j+(i-1)*5)=1
end
end
end
plot(s)xlabel('基带信号')
figure
pwelch(s)%功率谱
figure
%波形成形滤波器(平方根升余弦滚降)
h=firrcos(14,1200,1200,4800,'sqrt')
figure
stem(h)xlabel('成形滤波器的单位冲击响应')
[H,W]=freqz(h,1)
H=abs(H)
figure
plot(H)xlabel('成形滤波器的频率响应')
s=fftfilt(h,s)
figure
plot(s)xlabel('通过成形滤波器后的基带信号')
figure
pwelch(s)%经波形成形滤波器后的功率谱
%已调信号
e=dmod(a,4800,2400,12000,'空碰psk',2)%调制
figure
plot(e)xlabel('已调信号')
enoise=e+randn(1,60)%enoise=e+.1*randn(1,60)不同功率的高斯白噪声
aa=ddemod(enoise,4800,2400,12000,'psk',2)%解调
figure
stem(aa)xlabel('解调后的数字信号')%解调后的数字信号
p=symerr(a,aa)/12 %误码率
%误码率曲线
figure
r=-6:3:12
rr=10.^(r/10)
pe1=1/2*exp(-rr)%相干解调的误码率曲线
hold on
plot(r,pe1,'r')grid on
pe2=(1-1/2*erfc(sqrt(rr))).*erfc(sqrt(rr))%差分相干解调的误码纯租率曲线
plot(r,pe2,'b')xlabel('bpsk,dpsk误码率曲线')
set(gca,'XTick',-6:3:18)
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)