数字调制信号调制解调与时频域分析
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
简明通信原理实验
报告六
实验6
Matlab 实验三数字调制信号调制解调与时频域分析一、MATLAB仿真内容:
(1)运行样例程序,观察 OOK、BPSK、BFSK 信号的时域波形和功率谱谱,求已调信号的带宽。
(2)采用相干解调法对 BPSK 信号解调,绘制解调后的信号波形,并与原始信号进行比较,对仿真结果进行分析说明。
(3)编写 DBPSK 信号产生和解调程序,绘制 DBPSK 信号的时域波形和功率谱,绘制解调后的信号波形并与原始信号波形进行比较。(4)编写四进制相移键控信号 QPSK 的产生程序,绘制信号波形与功率谱。
二、MATLAB仿真结果:
(1)运行样例程序,观察OOK、BPSK、BFSK 信号的时域波形和功率谱谱,求已调信号的带宽。
文本:
clear all;close all;
A = 1; % 载波幅度
fc = 2; % 载波频率
N_sample = 8; % 每个码元采样点数
N = 500; % 码元数
Ts = 1; % 码元长度
dt = Ts/(fc*N_sample); % 波形采样间隔
fs = 1/dt; % 采样频率
t = 0:dt:N*Ts-dt;
T = length(t);
d = (sign(randn(1,N))+1)/2;
dd = upsample(d,fc*N_sample);
gt = ones(1,fc*N_sample);
d_NRZ = conv(dd,gt);
ht = A*cos(2*pi*fc*t);
%%********** OOK信号 ******************
s_BASK = d_NRZ(1:T).*ht;
[f1,s_BASKf] = myt2f(s_BASK,fs);
figure
subplot(211)
plot(t,s_BASK);grid
axis([0 10 -1.2 1.2]);
ylabel('OOK');
subplot(212)
plot(f1,10*log10(abs(s_BASKf).^2/T));grid
axis([-fc-4 fc+4 -50 10]);
ylabel('OOK功率谱密度(dB/Hz)');
%%********** BPSK信号 ******************
d_BPSK = 2*d_NRZ-1;
s_BPSK = d_BPSK(1:T).*ht;
[f2,s_BPSKf] = myt2f(s_BPSK,fs);
figure
subplot(211)
plot(t,s_BPSK);grid
axis([0 10 -1.2 1.2]);
ylabel('BPSK');
subplot(212)
plot(f2,10*log10(abs(s_BPSKf).^2/T));A = 1;grid % 载波幅度fc = 2; % 载波频率
N_sample = 8; % 每个码元采样点数
N = 500; % 码元数
ylabel('BPSK功率谱密度(dB/Hz)');
%%********** BFSK信号 ******************
d_BFSK = 2*d_NRZ-1;
s_BFSK = A*cos(2*pi*fc*t+2*pi*d_BFSK(1:T).*t);
[f3,s_BFSKf] = myt2f(s_BFSK,fs);
figure
subplot(211)
plot(t,s_BFSK);grid
axis([0 10 -1.2 1.2]);
ylabel('BFSK');
subplot(212)
plot(f3,10*log10(abs(s_BFSKf).^2/T));grid
axis([-fc-4 fc+4 -50 10]);
ylabel('BFSK功率谱密度(dB/Hz)');
xlabel('f');
波形:
1.OOK:Book=2Rb=2 Hz
2.BPSK:Bbpsk=2fs=2 Hz
3.BFSK:Bbfsk=|f2-f1|+2fs=2 Hz
(2)采用相干解调法对 BPSK 信号解调,绘制解调后的信号波形,并与原始信号进行比较,对仿真结果进行分析说明。
文本:
clear all;close all;
A = 1; % 载波幅度
B=1;
fc = 2; % 载波频率
N_sample = 8; % 每个码元采样点数
N = 500; % 码元数
Ts = 1; % 码元长度
dt = Ts/(fc*N_sample); % 波形采样间隔
fs = 1/dt; % 采样频率
t = 0:dt:N*Ts-dt;
T = length(t);
% 产生二进制信源
d = (sign(randn(1,N))+1)/2;
dd = upsample(d,fc*N_sample);
gt = ones(1,fc*N_sample);
d_NRZ = conv(dd,gt);
% 载波信号
ht = A*cos(2*pi*fc*t);
%%********** BPSK信号 ******************
d_BPSK = 2*d_NRZ-1;
s_BPSK = d_BPSK(1:T).*ht;
[f2,s_BPSKf] = myt2f(s_BPSK,fs);
subplot(211)
plot(t,s_BPSK);
axis([0 10 -1.2 1.2]);
ylabel('BPSK');
rt = s_BPSK.*cos(2*pi*fc*t); % 相干解调
rt = rt-mean(rt);
[f1,sf1] = myt2f(rt,fs);
[t0,rt0] = lpf(f1,sf1,B);
rt0=sign(rt0/2);
subplot(212)
plot(t0,rt0);hold on
axis([0 20 -2 3]);
plot(t,s_BPSK/2,'r--');
title('相干解调后的信号波形与输入信号的比较');
xlabel('t');
波形: