预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共11页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

武夷学院实验报告课程名称:_扩频通信技术及应用_项目名称:基于matlab的伪随机序列生成及相关函数仿真实验姓名:翁开传__专业:__通信工程___班级:__2__学号:_40__同组成员_无___实验预习部分注:1、实验预习部分包括实验环境准备和实验所需知识点准备。2、若是单人单组实验同组成员填无。:实验环境准备实验室的计算机和matlab软件和书本上的程序实验过程记录注:实验过程记录要包含实验目的、实验原理、实验步骤页码不够可自行添加。:实验目的了解伪随机序列的相关知识。了解m序列的相关知识了解其相关特性。熟悉MATLAB仿真的应用。掌握伪随机码的原理、软件产生仿真分析其相关特性。实验步骤函数ms_generator(registersconnections)是m序列的生成函数其中参数registers给出了移位寄存器的初始状态connections给出了m序列的发生器。functionseq=ms_generator(registersconnections)registers=[00001];connections=[100101];n=length(connections);L=2^(n-1)-1;seq(1)=registers(n-1);fori=2:Lsum=0;form=1:(n-1)sum=mod(sum+registers(m)*connections(m+1)2);endfork=(n-1):-1:2registers(k)=registers(k-1);endregisters(1)=sum;seq(i)=registers(n-1);end运行输出的结果如下函数auto_corr()计算二进制序列seq的自相关函数并画出函数曲线。在函数内调用了生成m序列的函数ms_generator(*)生成的m序列seq然后在计算。functionseq=ms_generator(registersconnections)registers=[00001];connections=[100101];n=length(connections);L=2^(n-1)-1;seq(1)=registers(n-1);fori=2:Lsum=0;form=1:(n-1)sum=mod(sum+registers(m)*connections(m+1)2);endfork=(n-1):-1:2registers(k)=registers(k-1);endregisters(1)=sum;seq(i)=registers(n-1);endfunctionauto_correlation=auto_corr(seq)registers=[10000];%设置初始状态connections=[101001];%设置反馈逻辑seq=ms_generator(registersconnections);seq=-1*(seq*2-1);%负逻辑映射len=length(seq);temp=[seqseq];fori=0:len-1auto_correlation(i+1)=seq*(temp(i+1:i+len))';endauto_correlationplot(0:len-1auto_correlation);运行的结果如下函数cross_corr()计算二进制序列seq1和seq2的互相关函数并画出曲线。在函数内调用ms_generator(*)函数分别生成等长的M序列seq1和seq2后在计算。程序也画出了自相关函数。functionseq=ms_generator(registersconnections)%registers=[00001];%connections=[100101];n=length(connections);L=2^(n-1)-1;seq(1)=registers(n-1);fori=2:Lsum=0;form=1:(n-1)sum=mod(sum+registers(m)*connections(m+1)2);endfo