Het nauwkeurig aansturen van de parallele poort onder windows is erg complex. Windows is immers een multitasking systeem: meerdere taken tegelijk waardoor het even duurt voordat het verzoek van jouw programma om een uitgang op de parallele poort te veranderen even op zijn buert moet wachten. Deze wachttijd kun je verkleinen door het programma een hééle hoge prioriteit te geven tov de andere taken die op je systeem lopen.
Daarnaast heb je te maken met een behoorlijke overhead. Het programma bestuurt de poort (waarschijnlijk) niet direct, maar via een dll/driver die ook nog communiceert met windows en andere dll's.
In windows 2000/nt hebben de timers die je kunt besturen vanuit ring 3 (het niveau waar applicaties op draaien) een instelbaarheid van 1 msec. ALs je nauwkeuriger wilt werken moet je een eigen device driver maken die direct in ring 0 draait. Deze driver kan zijn eigen interrupts genereren die exact elke xx sec worden afgehandeld waardoor besturen met een nauwkeurigheid van een tiende msec mogelijk wordt. Dit is echter een zéér complexe taak.
Wel kun je overwegen om gebruik te maken van extra hardware: bijvoorbeeld een microprocessor die een 8-bit datawoord op de parallele poort omzet naar een repeterend pulssignaal voor de servomotor. Misschien kun je zelfs wel gebruik maken van een D/A converter in combinatie met standaard componenten om eht gewenste signaal te genereren...