有关m序列的
			 
			 
			
		
		
		
			
			有关m序列的 
有一个作业要做一个和m序列相关的,先是形成自相关m序列,然后生成其自相关序列,两个都要产生图像。这些我都完成了。后面要用matlab图像处理,作出一个类似于示波器的调节旋钮的东西,点击一下就对自相关序列的延迟进行一些调节,调节至m序列和其自相关函数一样。各位牛人看看,给些指点,做了3天了,怎么都做不出来。 
   代码如下:%m序列发生器及其自相关和功率谱密度 
clear all; close all; 
g = 19;   % G = 10011 
state = 8;% state=1000 
L = 1000; 
%m序列产生 
N = 15; 
mq = mgen(g,state,L); 
%求序列自相关 
ms = conv( 1-2*mq, 1-2*mq(15:-1:1) )/N; 
figure(1) 
subplot(222) 
stem(ms(15:end)); 
axis([0 63 -0.3 1.2]);title('m序列自相关序列') 
%m序列构成的信号(矩形脉冲) 
N_sample=8; 
Tc = 1; 
dt = Tc/N_sample; 
t = 0:dt:Tc*L-dt; 
gt = ones(1,N_sample); 
mt = sigexpand(1-2*mq,N_sample); 
mt = conv(mt,gt); 
figure(1) 
subplot(221); 
plot(t,mt(1:length(t))); 
axis([0 63 -1.2 1.2]);title('m序列矩形成形信号') 
st = sigexpand( 1-2*mq(1:15),N_sample ); 
s = conv(st,gt); 
st = s(1:length(st)); 
rt1 = conv(mt,st(end:-1:1))/(N*N_sample); 
subplot(223) 
plot(t,rt1(length(st):length(st)+length(t)-1) ); 
axis([0 63 -0.2 1.2]);title('m序列矩形成形信号的自相关');xlabel('t'); 
%sinc脉冲 
Tc = 1; 
dt = Tc/N_sample; 
t = -20:dt:20; 
gt = sinc(t/Tc); 
mt = sigexpand(1-2*mq,N_sample); 
mt = conv(mt,gt); 
st2 = sigexpand( 1-2*mq(1:15),N_sample ); 
s2 = conv(st2,gt); 
st2 = s2; 
rt2 = conv(mt,st2(end:-1:1))/(N*N_sample); 
subplot(224); 
t1 = -55+dt:dt:Tc*L-dt; 
%plot(t,mt(1:length(t)) ); 
plot(t1,rt2(1:length(t1))); 
axis([0 63 -0.5 1.2]);title('m序列sinc成形信号的自相关');xlabel('t');
		 
		
		
		
		
		
		
		
	 |