Bei Timern schreckt mich ein wenig ab dass ich nicht wie ich es aus anderen Sprachen kenne einfach einen Milisekundenwert angeben kann sondern mit der Taktfrequenz rumrechen muss, was meiner Meinung nach eine Fehlerquelle ist.
Okay, aber die ultimativ fehlerfreie Lösung scheint Dein Ansatz bisher ja auch nicht zu sein, oder? Will sagen, dass es manchmal sogar Spaß macht, sich mit Fehlern auseinanderzusetzen und sie zu suchen

Was ist denn genau Dein Ziel? Wenn Du z.B. "nur" Signaltöne (z.B. als Tastenquittung oder so) erzeugen möchtest, dann wäre der Befehl "Sound" vielleicht das richtige. Eine Zeile Code, und mit ein bisschen rumprobieren kommt gut das heraus, was man möchte.

Sollen´s aber hochgenaue Rechtecksignale sein, dann wäre ein Timer und PWM garantiert das beste.

Um welche Frequenzbereiche geht´s denn?