Hallo Freunde.
Das Einsetzen von Gosub-Befehlen statt immer wieder dasselbe zu Schreiben, scheint den Code tatsächlich zu verkleinern. Bei dem Restlichen blick ich ehrlich gesagt noch nicht ganz durch (die Farbendeklaration).
Ob das Programm mit den neuen Ansprungbefehlen für die Schrittpause als auch den Programmabbruch funktioniert, kann ich jedoch erst am Wochenende, frühestens jedoch am Freitag sagen.
Bei dem ganzen Gedusel ist mir doch tatsächlich noch neben der Dimmfunktion eine Funktion zur Beschleunigung oder Verzögerung ALLER Puls-Modi, also auch inklusive dem Color-Fading, eingefallen. Das Ganze wird wieder über einen Select_Case aufgebaut und verlängert die Wartezeit. Im Select_Case für die Dimmfunktion war ja nun bereits die Schrittpause als Waitms-Zeitvariable eingebaut. Diese habe ich nun in eine kleine Rechenaufgabe umgewandelt, damit das Produkt trotzdem auf dasselbe hinaus läuft.
Code:
Select Case Brightness
Case 0 : X = 1023 : X_orange = 341 : X_blau = 255 : Schrittpause = Wartezeit
Case 1 : X = 682 : X_orange = 277 : X_blau = 170 : Schrittpause = Wartezeit * 1.5
Case 2 : X = 455 : X_orange = 152 : X_blau = 113 : Schrittpause = Wartezeit * 2.17
Case 3 : X = 303 : X_orange = 101 : X_blau = 76 : Schrittpause = Wartezeit * 3.33
Case 4 : X = 202 : X_orange = 67 : X_blau = 50 : Schrittpause = Wartezeit * 5
Case 5 : X = 134 : X_orange = 45 : X_blau = 34 : Schrittpause = Wartezeit * 7.5
End Select
Select Case Speed
Case 0 : Wartezeit = 6
Case 1 : Wartezeit = 8
Case 2 : Wartezeit = 10
Case 3 : Wartezeit = 12
Case 4 : Wartezeit = 14
Case 5 : Wartezeit = 16
End Select
Im Programmablauf selbst wird dann später nur noch der Schrittpausen-Wert eingetragen.
LG - Maik
Lesezeichen