Fonction hello

Bonjour,
je dois faire un programme permettant d'afficher hello tous les 30 secondes a l'aide des fonctions clock etime et pause, (par la suite je devrais faire attention au temps d'execution des calculs que je vais mettre a la place de hello) est-ce que quelqu'un pourrai me donner une piste pour debuter. merci d'avance.
Configuration: Windows XP Internet Explorer 7.0

3 réponses

  • Votes
  • Date
  • Date décroissante
  1. je programme sous matlab
    voici une premiere ebauche:
    for i=1:3
    t1 = clock()
    % start action
    disp('faire mesure damplitude')
    disp('faire mesure de phase')
    pause(5);
    % end action
    t2 = clock();
    while etime(t2, t1)<2 %secondes
    pause(0.1);
    t2 = clock();
    end
    etime(t2, t1)
    end
    1. Au depart j'ai deux porteuse de 10khz qui arrive sur une carte son MOTU HD192, a l'aide d'une gaussienne je filtre ces 2 signaux et je veus mesurer l'amplitude et la phase de ces 2 signaux a l'aide de ce programme:
      duration=15; %s
      nchannels=2;
      samplingrate=192000;
      smoothwindow=0.01; %s : half width of gaussian
      carrierfrequency=10e3; %Hz

      %data acquisition
      samples=duration*samplingrate;
      data=MotuInit(samples,nchannels,samplingrate);
      datalength=length(data);
      samples=datalength/nchannels;
      channels=zeros(datalength/nchannels,nchannels);
      for i=1:nchannels
      channels(:,i)=data(1+(i-1)*datalength/nchannels:i*datalength/nchannels);
      end

      %data filtering and amp and phase extraction
      t=(0:1/samplingrate:(samples-1)*1/samplingrate)';
      %Calculate gaussian window to smooth signal
      gaussize=smoothwindow*samplingrate;
      gauslenght=min(6*gaussize,samples);
      mgaus=mgaussian(gaussize,gauslenght);
      wins=mgaus/sum(mgaus);
      results=zeros(samples-gauslenght-1,nchannels);

      for i=1:nchannels
      convresult=convfft(wins,channels(:,i)*2.*exp(complex(0,2*pi*carrierfrequency*t)));
      results(:,i)=convresult(gauslenght+1:end-gauslenght);
      % clear ch1
      % e1=convfft(wins,ch2*2.*exp(i*2*pi*ifr*t));
      % clear ch2
      % %Calculate reference coil phase, amplitude is normalized to 1
      % ref1=e1((6*gaussize+1):nsamp)./abs(e1((6*gaussize+1):nsamp));
      % %Compensate the receiver phase with that of the reference coil
      % m1=d1((6*gaussize+1):nsamp)./ref1;
      % clear d1 e1
      end

      le probleme est que je debute en matlab et je vois pas trop comment reussir a modifier le temps de mesure(une premiere mesure de 1s et une autre de 60s)
      pouvez-vous me donner des pistes s'il vous plait