Une petite pause, en microseconde.

Soyez le premier à donner votre avis sur cette source.

Snippet vu 6 288 fois - Téléchargée 33 fois

Contenu du snippet

C'est rare mais des fois on ne veut pas que ça aille trop vite !

bonne pause !

ryl...

Source / Exemple :


Exemples d'utilisation:

DelayUS(1);			= 1 µS
DelayUS(100);			= 100 µS
DelayUS(100000);		= 100 mS
DelayUS(1000000);		= 1 S

			------------------------------------------

//////////////////////////
// Attendre N microSeconde
procedure DelayUS(MicroS:int64);
var Frq_Base, Time_memo, Time_now, dif: Int64;
begin

if QueryPerformanceFrequency(Frq_Base) then begin// Base fréquence systême
  QueryPerformanceCounter(Time_memo);     	// Repère temps
  repeat
   QueryPerformanceCounter(Time_now);// Comparer le Repère temps au temps qui
   dif := (Time_now - Time_memo) * 1000000 div Frq_Base;  // s'écoule
  until dif > MicroS;      // Si pause pas suffisante recommencer
end;

end;

A voir également

Ajouter un commentaire

Commentaires

pouicnet
Messages postés
1
Date d'inscription
samedi 5 février 2005
Statut
Membre
Dernière intervention
6 janvier 2006
-
Dit donc pour les pauses de quelques microsecondes, je peux vous dire qu'elles me sont très utile lorsque je veux prendre le contrôle du port parallèle pour le pilotage de moteurs pas à pas... Merci donc pour ce delayus bien pratique :)
cs_MAURICIO
Messages postés
2233
Date d'inscription
mardi 10 décembre 2002
Statut
Modérateur
Dernière intervention
15 décembre 2014
5 -
Si ça bouffe 1 microseconde du CPU y' a pas mort d' homme !
Sinon oui, je connaissait TMMTimer Kenavo, pour la bonne raison qu' il est meilleur que sleep et que je l' ai deja conseillé à plusieurs personnes sur ce site :)
GrandVizir demande quel est l' intérêt ... aucun à première vue, mais utilisé dans une boucle, il permet de dessiner sur un canvas en faisant une micropause. Bref, j' en sais strictement rien mais on va bien lui trouver un truc à ce code :)
cs_grandvizir
Messages postés
1237
Date d'inscription
samedi 8 novembre 2003
Statut
Membre
Dernière intervention
3 septembre 2006
10 -
L'avantage avec le Sleep est qu'il ne bouffe PAS de CPU contrairement à ce prog qui, certes très intéressant, reste malgré tout trop gourmand. Et la non consommation de flux par Sleep est très utile pour le threading à très haute priorité... Il faut donc garder Sleep dans ces domaines.

rylryl fait une pause en travaillant. C'est paradoxal, contrairement à Sleep qui fait sa pause en ne faisant vraiment rien...

Mais quel peut être l'intérêt de faire une pause de quelques microsecondes ? Quand vous prenez votre café, vous n'êtes pas pressés... ?
rylryl
Messages postés
328
Date d'inscription
mardi 9 mars 2004
Statut
Membre
Dernière intervention
15 décembre 2006
1 -
Merci, j'y vais !
ryl...
rylryl
Messages postés
328
Date d'inscription
mardi 9 mars 2004
Statut
Membre
Dernière intervention
15 décembre 2006
1 -
Moi je ne connais pas ce "TMMTimer" as tu plus d'infos stp Kenavo ?

ryl...

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.