产生m序列的matlab程序

产生m序列的matlab程序,第1张

function [m]=mxu(cn)

cn=[1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 1 1]%cn为移位寄存器,从左向右由小到大

an=[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1] %初始寄存器内容

len=length(an)%所需的移位寄存器的长度

L=2^len-1%m序列的长度

an=[zeros(1,len-1),1]%初始寄存器内容,zeros矩阵函数

m=zeros(1,L)%提速

m(1)=an(1)%m序列的第一个输出码元

for i=2:L

an1(1:len-1)=an(2:len)%移位

an1(len)=mod(sum(cn.*an),2)%寄存器与反馈的模2和

an=an1%移位后的寄存器

m(i)=an(1)%新的寄存器输出

end

one_num=sum(m,2)

zero_num=L-one_num

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%画饼图

num=[one_num zero_num]%输入数据

name={'1的概率','0的概率'}%输入标签

name1={'1的数量','0的数量'}%标题

bili=num/L

percent=round(bili*100000000000000000)/100%计算百分比

percent=num2str(percent')%转化为字符型

percent=cellstr(percent)%转化为字符串数组

biaoti=num2str(num')%转化为字符型

biaoti=cellstr(biaoti)%转化为字符串数组

%在每个标签后加2个空格

for i=1:length(name)

name(i)={[name{i},blanks(2)]}

end

bfh=cellstr(repmat('%',length(num),1))%创建百分号字符串数组

c=strcat(name,percent',bfh')

bt=strcat(name1,biaoti')

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%饼图

figure(1)

pie(num,c)

title(bt)

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%画波形图

figure(2)

%subplot(3,1,2)

stairs(m)%对m序列绘图

xlabel('n')

ylabel('y')

title('m序列')

%%%%%%%%%%%%%%%%%%%%%%自相关函数由于阶数大所以运行时间久

%求自相关函数

%rho=zeros(1,L)

%bwb=zeros(1,L)

%xg=2*m-1 %变为双极性序列,1对应1,0对应-1

%for j=0:L-1

%bwb=[xg(1+j:L),xg(1:j)]

% rho(j+1)=sum(m.*bwb)

%end

%j=-L+1:L-1%调整自相关图像显示的横坐标范围

%rho=[fliplr(rho(2:L)),rho]

%figure(3)

%plot(j,rho)

%axis([-L L -0.1 1.2])%设置横纵坐标范围

%title('m序列的自相关函数')

function

[out]

=

ms1(stg,

taps,

inidata,

n)

out

=

zeros(1,

2^stg-1)

%输出数组初始化

fpos

=

zeros(stg,

1)

%寄存器状态初始化

fpos(taps)

=

1

%寄存器状态载入

taps

=

[1,6]

fpos(taps)

=

[1,0,0,0,0,1]

for

l

=

1:2^stg-1

out(1,l)

=

inidata(stg)

%

输出第一个点(十进制)

num

=

mod(inidata*fpos,2)

%

乘法按照模2运算

inidata(2:stg)

=

inidata(1:stg-1)

%

移位运算

inidata(1)

=

num

%

输出反馈给第一个寄存器

end


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/8033643.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-12
下一篇 2023-04-12

发表评论

登录后才能评论

评论列表(0条)

保存