求基于matlab产生m序列和gold序列的程序??? 请懂的人帮帮忙了~~~~~急用呢!
2个回答
展开全部
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
function [goldseq]=gold_seq(fbconnection1,fbconnection2)
mseq1=m_sequence(fbconnection1);
mseq2=m_sequence(fbconnection2);
N=2^length(fbconnection1)-1;
for shift_amount=0:N-1
shift_mseq2=[mseq2(shift_amount+1:N) mseq2(1:shift_amount)];
goldseq(shift_amount+1,:)=mod(mseq1+shift_mseq2,2);
end
更加详细的你可以看看参考资料的!
http://0605014129.blog.163.com/blog/static/21700061201011891227110/
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
function [goldseq]=gold_seq(fbconnection1,fbconnection2)
mseq1=m_sequence(fbconnection1);
mseq2=m_sequence(fbconnection2);
N=2^length(fbconnection1)-1;
for shift_amount=0:N-1
shift_mseq2=[mseq2(shift_amount+1:N) mseq2(1:shift_amount)];
goldseq(shift_amount+1,:)=mod(mseq1+shift_mseq2,2);
end
更加详细的你可以看看参考资料的!
http://0605014129.blog.163.com/blog/static/21700061201011891227110/
更多追问追答
追问
那这两个都是产生gold序列所生成的函数,那m序列的呢,还有那个链接中出的m序列出来的波形图不是矩形波的样子呢。。
追答
第一个是m序列,第二个是gold序列!
参考资料: http://0605014129.blog.163.com/blog/static/21700061201011891227110/
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
Hwnd = Plugin.Window.GetKeyFocusWnd()
Delay 2000
t1=now:t2=now:sj1=0.5:sj2=60
Rem abcc
Delay 20
If DateDiff("s",t1,now)>=sj1
Delay 10
Call Plugin.Bkgnd.KeyPress(Hwnd, 83)
Delay 10
t1=now
End If
If DateDiff("s",t2,now)>=sj2
Delay 10
Call Plugin.Bkgnd.KeyPress(Hwnd, 70)
t2=now
End If
Goto abcc
Delay 2000
t1=now:t2=now:sj1=0.5:sj2=60
Rem abcc
Delay 20
If DateDiff("s",t1,now)>=sj1
Delay 10
Call Plugin.Bkgnd.KeyPress(Hwnd, 83)
Delay 10
t1=now
End If
If DateDiff("s",t2,now)>=sj2
Delay 10
Call Plugin.Bkgnd.KeyPress(Hwnd, 70)
t2=now
End If
Goto abcc
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询