77范文网 - 专业文章范例文档资料分享平台

2FSK调制和汉明码技术仿真 - 图文(2)

来源:网络收集 时间:2020-06-30 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

?1110?100????PI?H??1101?010r????1011?001??

监督矩阵可用来校验和纠错,其中P矩阵和Q矩阵为转置关系。

3设计过程

3.1函数介绍

randint(m,n,M):数字信号产生函数,其中m表示产生的信号的行数,n表示产生的信号的列数,M表示使用的进制数。

encode(msg,n,k,method):信道编码函数,msg表示编码以前信号序列,n表示编码后长序列长度,k表示信息位长度,method表示编码方式,采用汉明编码时method=’hanming’。

dmod(x,Fc,Fd,Fs,’fsk’,M):数字带通调制函数,x表示调制前信号序列,Fc表示载波频率,Fd码速率,Fs表示采样频率,tone表示两个载波信号的频率间隔,tone如果不给定则默认为Fd的值,要求Fs>Fc>Fd并且Fs/Fd必须为一个整数,’fsk’表示采用FSK调制,M表示采用的进制数。

awgn(x,snr,’measured’):信道函数,x表示进入信道前信号,snr表示信噪比,’measured’表示现对信号的功率进行测试,然后再添加高斯噪声。

ddemod(x,Fc,Fd,Fs,’fsk’,M):数字带通解调函数,x表示需要解调的信号。 decode(msg,n,k,method):信道译码函数,msg表示需要译码的函数。

3.2 过程测试代码

clear clc

Fc=10; %载频 Fs=32; %系统采样频率 Fd=1; %码速率 N=Fs/Fd; tone=5;

numSymb=4; %进行仿真的信息代码个数 M=2; %进制数

5

SNRpBit=10; %信噪比 SNR=SNRpBit/log2(M);

numPlot=4; %二进制码个数

%产生4个二进制随机码 x=randint(1,numSymb,M) figure(1)

stem([0:numPlot-1],x,'bv'); set(gca,'XTick',0:3); axis([0 numPlot-1 -0.2 1.2]); title('二进制信号'); xlabel('k');

%信道编码 n=7; k=4;

y=encode(x,n,k,'hamming'); figure(2)

stem([0:n-1],y,'bv');

title('经过信道编码后的二进制信号'); xlabel('n'); %调制

m=dmod(y,Fc,Fd,Fs,'fsk',M,tone); numModPlot=n*Fs; t=[0:numModPlot-1]./Fs; figure(3)

plot(t,m(1:length(t)),'b-'); axis([0 n -1.5 1.5]);

%汉明编码 /SK调制 %采样点进行抽样6

title('2FSK调制后的信号'); xlabel('时间'); ylabel('幅值');

%在已调信号中加入高斯白噪声

n1=awgn(m,SNR,'measured'); %在已调信号中加入高斯白噪声 figure(4)

plot(t,n1(1:length(t)),'b-'); %画出经过信道的实际信号 axis([min(t) max(t) -1.5 1.5]); title('加入高斯白噪声后的已调信号'); xlabel('时间'); ylabel('幅值');

%相干解调 figure(5)

z=ddemod(n1,Fc,Fd,Fs,'fsk',M,tone); /SK相干解调 stem([0:n-1],y,'bv'); %调制前信号图 hold on;

stem([0:n-1],z,'ro'); %解调后信号图 hold off;

axis([0 n-1 -0.2 1.3]);

title('调制前和解调后的信号比较');

legend('2FSK调制前二进制信号','相干解调后的二进制信号'); xlabel('n');

%信道译码 figure(6)

d=decode(z,n,k,'hamming') %汉明译码 stem([0:k-1],d,'bv');

7

set(gca,'XTick',0:3); axis([0 k-1 -0.2 1.2]);

title('经过信道译码后的二进制信号'); xlabel('k');

3.3 最终系统实现代码

clear clc

Fc=10; %载频 Fs=32; %系统采样频率 M = 2;

x1=randint(10000,4,M); % 随机序列 x=encode(x1,7,4,'hamming');%信道编码

s1= fskmod(x1,M,5,8,Fs); %调制 未经信道编码 s= fskmod(x,M,5,8,Fs); % 调制

SNR = 1:1:10; % 信噪比范围 for n = 1:length(SNR)

r10 = awgn(s1,SNR(n),'measured'); % 加高斯噪声 未经信道编码 r100 = fskdemod(r10,M,5,8,Fs); % 解调 未经信道编码 r = awgn(s,SNR(n),'measured'); % 加高斯噪声 r1 = fskdemod(r,M,5,8,Fs); % 解调 r11=decode(r1,7,4,'hamming'); %信道译码

[nErrors, BER(n)]=biterr(x1,r100); %计算没经信道编码的误比特率 [nErrors, BER1(n)]=biterr(x1,r11); %计算经信道编码误比特率 BERtheory(n)=1/2*erfc(sqrt(10.^( SNR(n) /10))); end

semilogy(SNR,BERtheory,'b-o',SNR,BER1,'k-*',SNR,BER,'m-p'); %不同颜色画出误比特率比

legend('理论误码率','经信道编码的误码率','不经信道编码的误码率'); %曲线名称 xlabel('SNR (dB)'); ylabel('BER'); %横纵坐标

8

曲线对

4 实验结果

4.1 仿真结果截图

图4-1 二进制信号 图4-2 经过信道编码后的二进制信号

图4-3 2FSK调制信号 图4-4 加入高斯白噪声后的已调信号

图4-5 调制前和解调后的信号比较 图4-6 信道译码后后的信号

图4-7 仿真与理论的信噪比比较

9

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说教育文库2FSK调制和汉明码技术仿真 - 图文(2)在线全文阅读。

2FSK调制和汉明码技术仿真 - 图文(2).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/jiaoyu/1131936.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: