Hoi,
Ik heb dit stukje code in mijn programma (VB6, WinXP)
DoEvents
Call Sleep(1)
Ik gebruik het om een stappenmotor aan te drijven. Alleen... de motor draait te langzaam. Je zou verwachten dat hij met 1000 stappen per seconde draait, maar dat doet ie niet.
Nou, komt het vreemde. Als ik WinMediaPlayer open (of iTunes) dan draait ie plotseling op de goede snelheid!
Weet iemand wat er precies gebeurt in VB?
weardguy
http://www.m-voorloop.nl --- Ik? Welnee! Ik zit nog lang niet achter de germaniums.
wat drijft die stappenmotor aan, wat is de sturing?
Het kan toch zo zijn dat er iets in de sturing niet helemaal goed zit?
nee, dat is niet zo, want in mijn simulatie gedeelte gebeurt hetzelfde (op het scherm).
Ik weet wel dat sleep niet zo precies is, maar de afwijking is echt een factor 10 verschil ofzo als WinMediaPlayer aanstaat.
Ik heb het al opgelost door met een do while loop over een langere tijd te meten en die waarde om te rekenen naar ms. Dat werkt wel.
Volgens mij is het gewoon niet mogelijk om met GetTickCount en Sleep tijden af te meten onder ca. 20 ms. Tenminste daar lijkt het op.
En waarom dat met WinMediaSpeler zo was weet ik nog steeds niet.