g un pb pour insérer un compte à rebours dans une fonction qui a pour but d'acquérir les données du port parallèle plus souvent de fois possible.
g bien trouvé la source suivante dans le forum:
****************************************************
public Chrono as long
private sub form_load()
' Un intervalle de 1 seconde
timer1.interval=1000
Chrono=5
end sub
private sub timer1_timer()
' Chaque seconde ce code s'executera
' Si le compte à rebours est terminé
If Chrono=0 then
timer1.enabled=false
form1.show
End If
' on enlève 1 seconde au chrono
Chrono=Chrono-1
Label1.caption=str(Chrono)
end sub
**************************************************
le pb est que cela va surement ralentir l'acquisition du signal tte les 1 secondes (à cause du traitement de la fonction timer1_timer), et de plus, je ne sais pas comment réagit le timer par rapport aux ressources de l'ordi.
Attention, je veux forcement faire un compte à rebours, pour limiter ainsi la fonction d'acquisition (boucle Do/Loop).
Merci d'avance. ;)
koub.
A voir également:
Comment insérer un compte à rebours dans une boucle d'acquisition?
Salut kouby2k3
Les Timer ne sont pas précis et il arrive fréquemment qu'un cycle ne soit pas exécuté, faute de ressource. Ca, on n'y peut rien.
Par contre, une autre solution :
Puisque tu fais une boucle quelque part (...) dans ta fonction d'acquisition, pourquoi ne pas limiter l'acquisition elle-même.
Dim Temps As Date
Temps = Now
Do While Abs(DateDiff("s", Now, Temps)) < 5
... ' ton code d'acquisition
DoEvents
Loop
Avec ce code, tu sortiras du Do-Loop 5 secondes après l'avoir lancé.
Je ne sais pas si ça répond à ta question ...
Ca réponds pas mal du tout à ma question, mais comment puis-je afficher le décomptage dans un label par ex? Car je comprends pas du tout les arguments de la fonction... costaud ;)