Répondre à la discussion
Affichage des résultats 1 à 3 sur 3

Tempo sous C



  1. #1
    Slimounet45

    Tempo sous C


    ------

    Bonjour à tous,

    Avant de formuler ma demande, je voulais remercier tout ceux qui participent aux différents forums de ce site. Il est vraiment génial.
    Mon soucis actuellement est de réaliser une fonction tempo et ceci sous C. J'utilise actuellement Visual C++ dont j'ai intégré du source écrit en C. Je ne peut pas utiliser la fonction Sleep() (de mémoire) de Visual dans le source C.
    Je voulais intégrer des nop et faire une boucle avec un while mais je ne connais pas la durée du nop.
    Est-ce que quelqu'un saurait comment faire la tempo ?
    Merci par avance pour vos réponses.
    Sincères salutations.

    -----

  2. #2
    argusazure

    Re : Tempo sous C

    1) Pourquoi ne pourrais-tu pas utiliser Sleep()? c'est une fonction de l'API windows il me semble.

    2) Utiliser un timer si tu programmes avec les MFC

  3. #3
    Jean_Luc

    Re : Tempo sous C

    Salut,

    Je voulais intégrer des nop et faire une boucle avec un while mais je ne connais pas la durée du nop.
    Tu peux déterminer la durée d'un nop (1 cycle) mais pour cela il te faudra faire un peut d'assembleur:
    http://www.codeproject.com/system/Processor_Speed.asp

    Mais tant qu'a faire une attente active autant directement utiliser les timers hautes résolutions:

    Code:
    double frequency;
    
    void sleep(double sec) {
    
      LARGE_INTEGER debut; 
      LARGE_INTEGER fin;
      double duree;
      QueryPerformanceCounter(&debut);
    
      do {
        QueryPerformanceCounter(&fin);
        duree = (double)(fin.QuadPart-debut.QuadPart)/frequency;
      } while(duree<sec);
    
    }
    
    // Exemple
    LARGE_INTEGER p;
    QueryPerformanceFrequency(&p);
    frequency = (double)p.QuadPart;
    sleep(10);
    1) Pourquoi ne pourrais-tu pas utiliser Sleep()? c'est une fonction de l'API windows il me semble.

    2) Utiliser un timer si tu programmes avec les MFC
    Le problème de la fonction Sleep() et des timers MFC (SetTimer), c'est que la résolution maximum est de 10milli-seconde, c'est peut-être ça qui est génant ?
    Dernière modification par Jean_Luc ; 11/04/2007 à 14h05.
    L'Univers est fini. Ah bon déjà ?

Discussions similaires

  1. Capteur inductif+tempo
    Par mintraf dans le forum Électronique
    Réponses: 0
    Dernier message: 21/05/2007, 16h30
  2. tempo sur fronts
    Par LTHOMAS dans le forum Électronique
    Réponses: 4
    Dernier message: 21/07/2006, 22h20
  3. tempo
    Par chris74 dans le forum Électronique
    Réponses: 3
    Dernier message: 28/01/2005, 22h06
  4. tempo 1min
    Par etronics dans le forum Électronique
    Réponses: 7
    Dernier message: 26/03/2004, 13h27
Découvrez nos comparatifs produits sur l'informatique et les technologies.