Fonction hello

exocet -  
 exocet -
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

  1. KX Messages postés 19031 Statut Modérateur 3 020
     
    Avec quel langage de programmation ?
    0
  2. exocet
     
    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
    0
  3. exocet
     
    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
    0