数据通信实验指导书教程.doc
文本预览下载声明
数 据 通 信
实 验 指 导 书
信息技术学院
目 录
TOC \o 1-3 \h \z \u HYPERLINK \l _Toc381006073 实验一 数字通信的基带码型 PAGEREF _Toc381006073 \h 3
HYPERLINK \l _Toc381006074 实验二 2ASK数字调制与解调 PAGEREF _Toc381006074 \h 7
HYPERLINK \l _Toc381006075 实验三 2FSK数字调制与解调 PAGEREF _Toc381006075 \h 12
HYPERLINK \l _Toc381006076 实验四 2PSK数字调制与解调 PAGEREF _Toc381006076 \h 18
实验一 数字通信的基带码型
一、实验目的:
1. 了解几种常见的数字基本信号
2. 掌握常用数字基带传输码型的编码规则
3. 掌握用MATLAB仿真技术实现目前用于数字通信的基带码型
二、实验仪器:
安装Matlab软件的PC机一台
三、实验原理:
1、单极性不归零码NRZ(Non Return Zero)
脉冲宽度等于码元宽度T
特点:(1)有直流,零频附近的低频分量一般信道难传输。
(2)收端判决门限与信号功率有关,不方便。
(3)要求传输线一端接地。
(4)不能用滤波法直接提取位定时信号。
2、双极性非归零码(BNRZ)
,有正负电平
特点:不能用滤波直接提取位定时信号。
3、单极性归零码(RZ)
特点:(1)可用滤波法提取位同步信号
(2)NRZ的缺点都存在
4、双极性归零码(BRZ)
特点:(1)整流后可用滤波提取位同步信号
(2)NRZ的缺点都不存在
四、实验步骤:
1、单极性不归零码NRZ(Non Return Zero)
(1) 建立M文件,MATLAB实现程序如下:
function y=snrz(x)
%本函数实现将输入的一段二进制代码编为相应的单极性不归零码输出
%输入x为二进制码,输出y为编好的码
t0=200;
t=0:1/t0:length(x); %给出相应的时间序列
for i=1:length(x) %计算码元的值
if x(i)==1 %如果输入信息为1
for j=1:t0 %该码元对应的点值取1
y((i-1)*t0+j)=1;
end
else
for j=1:t0
%如果输入信息为0,码元对应的点值取0
y((i-1)*t0+j)=0;
end
end
end
y=[y,x(i)];
plot(t,y);
%采用title命令来实现标记出各码元对应的二元信息
title(1 0 1 1 0 0 1 0);
grid on;
axis([0,i, -0.1,1.1]);
(2) 在命令窗口中键入x的二进制代码和函数名,就可以得到所对应的单极性不归零码输出,如输入以下指令,将出现图1-2所示结果。
x=[1 0 1 1 0 0 1 0];
snrz(x)
图1-2 单极性不归零码
2、双极性非归零码(BNRZ)
双极性非归零码的实现同单极性基本一样,只需将snrz.m中的判断得到0信息后的语句y((i-1)*t0+j)=0;中的0改为-1即可,将axis([0,i, -0.1,1.1]);中的-0.1改为-1.1即可,即axis([0,i, -1.1,1.1]);所以就不再给出MATLAB函数文件了,波形图如图1-3所示。
图1-3 双极性不归零码
3、单极性归零码(RZ)
function y=srz(x)
%本函数实现将输入的一段二进制代码编为相应的单极性归零码输出
%输入x为二进制码,输出y为编好的码
t0=200;
t=0:1/t0:length(x); %给出相应的时间序列
for i=1:length(x) %计算码元的值
if x(i)==1 %如果输入信息为1
for j=1:t0/2
y((2*i-2)*t0/2+j)=1; %定义前半段时间值为1
y((2*i-1)*t0/2+j)=0; %
显示全部