返回信息流【 以下文字转载自 Board_Apply 讨论区 】
发信人: sunmoonstar (帅猪), 信区: Board_Apply
标 题: 〖范文〗请教知道了m序列生成多项式用MATLAB怎样比较简单实现
发信站: 北邮人论坛 (Mon Mar 26 22:02:37 2007), 站内
thank you
global dt df t f N
close all
n=input('输入移位寄存器级数n(2~9):');
if n==[],n=9;end
M=2^n-1;
L=64;
N=M*L;
Ts=1;
dt=Ts/L;
df=1/(N*dt);
T=N*dt;
Fh=1/Ts;
Bs=N*df/2;
jc=ones(1,n);
by=zeros(1,10);
m=zeros(1,M);
t=[-T/2+dt/2:dt:T/2];%时域横坐标
f=[-Bs+df/2:df:Bs];
figure(1)
set(1,'Position',[50,300,800,500])
switch n
case 2
by=[1,1,1,0,0,0,0,0,0,0]
case 3
by=[1,1,0,1,0,0,0,0,0,0]
case 4
by=[1,1,0,0,1,0,0,0,0,0]
case 5
by=[1,0,1,0,0,1,0,0,0,0]
case 6
by=[1,1,0,0,0,0,1,0,0,0]
case 7
by=[1,0,0,1,0,0,0,1,0,0]
case 8
by=[1,0,1,1,1,0,0,0,1,0]
case 9
by=[1,0,0,0,1,0,0,0,0,1]
otherwise
by=by
end
for loop=1:M,
temp=jc(1),
jc(1)=xor(by(2)*jc(1),by(3)*jc(2)),
for loop1=2:n-1,
jc(1)=xor(jc(1),by(loop1+2)*jc(loop1+1)),
end
m(loop)=jc(n),
jc(3:n)=jc(2:n-1)
jc(2)=temp,
end
m_=zeros(L,M);
for loop2=1:L,m_(loop2,:)=m;end
m_=reshape(m_,1,N);
figure(1)
plot(t,m_,'b');
grid
axis([-2^(n-1),2^(n-1),-0.5,1.5])
xlabel('t (us)')
ylabel('m(t) (V)')
title('m序列时域波形')
这是一条镜像帖。来源:北邮人论坛 / matlab / #14同步于 2007/3/26
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Matlab机器人发帖
【范文】请教知道了m序列生成多项式用MATLAB怎样比较简单实现 (
zitan
2007/3/26镜像同步0 回复
订阅后,新回复会通过你的通知中心匿名送达。
0 条回复
暂无回复 · 你可以订阅本帖等待新回复。