Guten Abend

ich hab mal eine Frage, hab nun über eine Stunde blöd rumprobiert und nun die Faxen dicke, mein Problem ist für mich vollkommen unlogisch und ich möchte nun wissen warum das so ist :
Ich möchte einen Servo über einen Mega8 ansteuern (erstmal just for fun ausprobieren). Erstes ganz simples programm mit Pulsweitendefinition über den waitus befehl hat funktioniert. Bei waitus 1000 fährt er an den Anschlag links und bei 2000 rechts.
Nun das gleiche mit Variable, da ich später ein Sub schreiben will was die Pulsweite verstellt: Dim T as byte, T= 1000, aber dann wird die zeile einfach übersprungen (Pulsweite = 0 ). Nächster Versuch (genau die gleiche Programmstruktur): Waitms = T, T = 1 - also 100% dasselbe. voila, es funktioniert. Aber warum funzt es mit dem waitms befehl und nicht mit dem waitus befehl? Mein zweiter Versuch war der, einen Umrechnungsfaktor einzubringen, also über den waitms befehl zu gehen und T so zu multiplizieren dass eine rationale zahl zwischen 1 und 2 rauskommt. Da hat mir Bascom allerdings einen Fehler ausgegebe, ich muss dazu sagen dass ich das rechnen mit Variablen noch nicht beherrsche (kann man überhaupt mit brüchen rechnen?). Bitte helft mir, ich krieg sonst noch die Kriese [-(

Grüße Paul