www.pudn.com > RadarSignals.rar > steplfm_gui.m


% steplfm_gui.m - stepped train of LFM pulses with GUI
% written by Eli mozeson and Nadav Levanon
% creates signal for use with ambiguity function plotting program
 
% create the signal parameters input figure
steplfmfig=figure;
set(steplfmfig,'Position',[460 51 520 390],'MenuBar','none','visible','on');

% set default values for the steplfm signal
tpdf=3;
tpb=18;
trovertp=10;
nn=8;
rv=-1;
cost=0;

% create tpdf input slider
y_tpdf = 175;

sli_tpdf = uicontrol(steplfmfig,'Style','Slider','sliderstep',[0.01 0.1],...
   'Position',[125 y_tpdf 300 20],'Min',0,'Max',60,'Value',tpdf,'Callback',[...
      'set(tpdf_cur,''String'',',...
      'num2str(get(sli_tpdf,''Val''))),',...
      'tpdf=get(sli_tpdf,''Val'');']);

tpdf_cur = uicontrol(steplfmfig,'style','edit','Pos',[ 425 y_tpdf 50 20 ],...
   'String',num2str(get(sli_tpdf,'Value')),'Callback',[...
      'set(sli_tpdf,''Val'',',...
      'str2num(get(tpdf_cur,''String''))),',...
      'tpdf=get(sli_tpdf,''Val'');']);

tpdf_lbl = uicontrol(steplfmfig,'style','Text',...
   'Pos',[ 25 y_tpdf 100 20 ],'String','Txdf');

% create tpB input slider
y_tpB = 225;

sli_tpB = uicontrol(steplfmfig,'Style','Slider','sliderstep',[0.01 0.1],...
   'Position',[125 y_tpB 300 20],'Min',0,'Max',60,'Value',tpb,'Callback',[...
      'set(tpB_cur,''String'',',...
      'num2str(get(sli_tpB,''Val''))),',...
      'tpb=get(sli_tpB,''Val'');']);

tpB_cur = uicontrol(steplfmfig,'style','edit','Pos',[ 425 y_tpB 50 20 ],...
   'String',num2str(get(sli_tpB,'Value')),'Callback',[...
      'set(sli_tpB,''Val'',',...
      'str2num(get(tpB_cur,''String''))),',...
      'tpb=get(sli_tpB,''Val'');']);

tpB_lbl = uicontrol(steplfmfig,'style','Text',...
   'Pos',[ 25 y_tpB 100 20 ],'String','TxB');

% create trovertp input slider
y_trovertp = 275;

sli_trovertp = uicontrol(steplfmfig,'Style','Slider','sliderstep',[0.01 0.1],...
   'Position',[125 y_trovertp 300 20],'Min',0,'Max',60,'Value',trovertp,'Callback',[...
      'set(trovertp_cur,''String'',',...
      'num2str(get(sli_trovertp,''Val''))),',...
      'trovertp=get(sli_trovertp,''Val'');']);

trovertp_cur = uicontrol(steplfmfig,'style','edit','Pos',[ 425 y_trovertp 50 20 ],...
   'String',num2str(get(sli_trovertp,'Value')),'Callback',[...
      'set(sli_trovertp,''Val'',',...
      'str2num(get(trovertp_cur,''String''))),',...
      'trovertp=get(sli_trovertp,''Val'');']);

trovertp_lbl = uicontrol(steplfmfig,'style','Text',...
   'Pos',[ 25 y_trovertp 100 20 ],'String','Tr/T');

% create nn input slider
y_nn = 325;

sli_nn = uicontrol(steplfmfig,'Style','Slider','sliderstep',[0.01 0.1],...
   'Position',[125 y_nn 300 20],'Min',1,'Max',30,'Value',trovertp,'Callback',[...
      'set(nn_cur,''String'',',...
      'num2str(floor(get(sli_nn,''Val'')))),',...
      'nn=floor(get(sli_nn,''Val''));']);

nn_cur = uicontrol(steplfmfig,'style','edit','Pos',[ 425 y_nn 50 20 ],...
   'String',num2str(get(sli_nn,'Value')),'Callback',[...
      'set(sli_nn,''Val'',',...
      'floor(str2num(get(nn_cur,''String'')))),',...
      'nn=floor(get(sli_nn,''Val''));']);

trovertp_lbl = uicontrol(steplfmfig,'style','Text',...
   'Pos',[ 25 y_nn 100 20 ],'String','n');

% create reverse slope push botton
y_rv=125;

rv_on = uicontrol(steplfmfig,'Style','radio',...
   'Pos',[425 y_rv 20 20 ],'Value',(rv+1)/2,'Callback',[...
      'set(rv_on,''value'',get(rv_on,''value'')),'...
      'rv=2*get(rv_on,''value'')-1;']);

rv_text = uicontrol(steplfmfig,'Style','text',...
   'String','Reverse slope','Position',[125 y_rv 300 20]);

% create linear / costas push botton
y_cost=75;

cost_on = uicontrol(steplfmfig,'Style','radio',...
   'Pos',[425 y_cost 20 20 ],'Value',cost,'Callback',[...
      'set(cost_on,''value'',get(cost_on,''value'')),'...
      'cost=get(cost_on,''value'');']);

cost_text = uicontrol(steplfmfig,'Style','text',...
   'String','Linear (=0) or Costas (=1) steps','Position',[125 y_cost 300 20]);

% create calculate and draw signal parameters push button
pushtocalculatestplfm=uicontrol(steplfmfig,'Style','Push','Position',[140 23 312 20 ],...
   'String','Cal. Sig. Amplitude and Frequency ','Callback',[...
     'sigflag=0;'...
     'steplfm_cal;',...
     'set(u_amp_text,''String'',num2str(u_amp));',...
     'set(u_amp_on,''Value'',acode);',...
     'set(u_phase_text,''String'',num2str(u_phase));',...
     'set(u_phase_on,''Value'',pcode);',...
     'set(freq_text,''String'',num2str(f_basic));',...
     'set(freq_on,''Value'',fcode);']);