Timer qui calculer un temps ne dépassant pas une seconde

dm.jn Messages postés 2 Date d'inscription   Statut Membre Dernière intervention   -  
f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour à tous,

Je travaille avec Excel2007 et VBA.
Je récupère à travers le port série un signal (en utilisant MSCOMM). Ce signal est nul au début, puis il devient non nul pendant des dizaines ou centaines de millisecondes, et finit par revenir à zéro.
Je veux calculer le temps pendant lequel le signal est non nul.
j'ai donc besoin d'un timer dont la résolution est 1ms pour qu'il puisse calculer un temps qui ne dépasse pas une seconde.
Quelqu'un pourrait m'aider?
Merci d'avance..
A voir également:

3 réponses

f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention   1 713
 
Bonjour,

l'instruction Timer vous donne un temps avec 8 chiffres apres la virgule ou le point selon le type de separateur.

Comment lancez-vous et stoppez-vous l'acquisition ?????
0
dm.jn
 
Bonjour,

je lance l'acquisition en appuyant sur un bouton, et je l'ai programmée à être arrêtée une seconde après son lancement.
Moi je connais l'instruction TimeValue("00:00:00") qui ne donne que 6 chiffres, pourriez vous me donner plus d'informations concernant l'instruction Timer dont vous m'avez parlé?
Merci
0
f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention   1 713
 
Bonjour,

TimeValue("00:00:00") qui ne donne que 6 chiffres Non, c'est hh:mm:ss


aide excel: Timer

Timer, fonction, exemple: ici deux chiffres apres la virgule

Cet exemple utilise la fonction Timer pour mettre l'application sur pause. Cet exemple utilise également la fonction DoEvents pour donner le contrôle à d'autres processus pendant la pause.

Dim PauseTime, Start, Finish, TotalTime
If (MsgBox("Cliquez sur Oui pour effectuer une pause de 5 secondes", 4)) = vbYes Then
    PauseTime = 5    ' Définit la durée.
    Start = Timer    ' Définit l'heure de début.
    Do While Timer < Start + PauseTime
        DoEvents    ' Donne le contrôle à d'autres processus.
    Loop
    Finish = Timer    ' Définit l'heure de fin.
    TotalTime = Finish - Start    ' Calcule la durée totale.
    MsgBox "Pause de " & TotalTime & " seconde(s)"
Else
    End
End If



la: 7 chiffres apres la virgule

Sub test()
    Dim x As Double
    x = Timer
End Sub
0