Okay - es sollen also nur drei Zeiten eingeben werden...
Nennen wir sie mal Zeit1, Zeit2 und Zeit3, dann würde ich das vom Prinzip her so machen:
Code:... Dim Zeit1 as Word Dim Zeit2 as Word Dim Zeit3 as Word Dim X as Word ... Do Locate 1,1 LCD "Zeit 1:" Eingabe_Zeit1: X = Getadc(1) Zeit1 = X * ..... Zeit1 = Zeit1 + ... (Hier wird der GetADC-Wert in einen passenden Wert für Zeit1 umgerechnet, je nachdem welchen Wertebereich Zeit1 haben soll) Locate 2,1 LCD Zeit1; " " '3 Leerstellen, damit "alte" Ziffern vom vorigen Wert überschrieben werden, wenn Zeit1 weniger Stellen haben sollte als der vorige Wert If Taster1 = 1 then goto Eingabe_Zeit1 Bitwait Taster1, set 'Wartet ab, bis der Taster losgelassen wurde waitms 10 'noch eine kurze Pause, um Prellen abklingen zu lassen CLS Locate 1,1 LCD "Zeit 2:" Eingabe_Zeit2: X = Getadc(1) Zeit2 = X * ... Zeit2 = Zeit2 + ... (Erneut: Berechnung von Zeit2 aus GetADC-Wert...) Locate 2,1 LCD Zeit2; " " If Taster1 = 1 then goto Eingabe_Zeit2 Bitwait Taster1, set waitms 10 ... (gleiches Spiel für Zeit 3)
...und fertig!
Und Du hast schon recht, dass man ein Unterprogramm natürlich nur mit GOSUB anspringen kann. Aber man muss es unbedingt mit Return verlassen, und nicht mit einem GOTO!







Zitieren


Lesezeichen