Une petite pause, en microseconde.

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

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

Option Explicit

Private Declare Function QueryPerformanceCounter Lib "kernel32" _
                                 (X As Currency) As Boolean
Private Declare Function QueryPerformanceFrequency Lib "kernel32" _
                                 (X As Currency) As Boolean
                                 
                                 

'//////////////////////////
'// Attendre N microSeconde
Private Sub DelayUS(MicroS)
  Dim Frq_Base As Currency, Time_memo As Currency, Time_now As Currency
  Dim dif As Long
       
  If QueryPerformanceFrequency(Frq_Base) Then ' Base fréquence systême
    QueryPerformanceCounter Time_memo       ' Repère temps
    Do
        QueryPerformanceCounter Time_now    ' Comparer le Repère temps au temps qui
        dif = (Time_now - Time_memo) * 1000000 / Frq_Base  ' s'écoule
    Loop Until dif > MicroS          ' Si pause pas suffisante recommencer
  End If
End Sub

A voir également

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.