nur als ergänzung:
in deinem code wird wahrscheinlich die leere for-schleife vom compiler wegoptimiert. wenn du mit asm("NOP"); einen befehl (in diesem fall einen tu-nichts-befehl) in die for schleife setzt, kann sie nicht mehr wegoptimiert werden.

es spricht aber nichts gegen Huberts code, und der vorteil ist, dass du ohne viel rechnerei zu halbwegs genau den wartezeiten kommst, du du willst.

gruesse