Weiches Auf- und Abblenden mit delay vs millis()
|
22.12.2020, 14:40
Beitrag #1
|
|||
|
|||
Weiches Auf- und Abblenden mit delay vs millis()
Hallo Gemeinde,
ich habe ein Problem mit dem Ablauf eines Fadingeffektes. Wenn ich für die zeitliche Ablaufsteuerung mit delay() arbeite, werden die LEDs weich Ein- und Ausgeblendet. Da ich aber noch einige Schaltbefehle im Gesamtsketch benötige, muss ich delay() durch millis() ersetzen. Lasse ich den Sketch mit millis() laufen, ist die Aufblendzeit deutlich kürzer, die Abblendzeit ist so kurz, dass sie fast nur noch meßtechnisch erfassbar ist. Veränderungen an den Parametern in der Zählerschleife (aktuell 12 Schritte) oder der Pausenzeit (aktuell 50) führen nur dazu, dass die LEDs flackern, mit halber Helligkeit leuchten u. a. nicht erwünschte Effekte. Ausserdem tritt gelegentlich ein Doppelblitzen der LEDs auf. Anbei der Sketch. Ich habe ihn so dargestellt dass der gewünschte Effekt eintritt wenn "delay()" aktiv und "fadingPause" deaktiviert ist. Durch Umestzung von // ist der Sketch so konfiguriert wie ich dachte dass er laufen müsste. Code: const int PfeilspitzeLinks = 9; |
|||
22.12.2020, 14:45
Beitrag #2
|
|||
|
|||
RE: Weiches Auf- und Abblenden mit delay vs millis()
Du hast millis noch nicht verstanden.
Grundprinzip: Schaue auf die Uhr - muss ich was tun - ja -> nächste Helligkeitsstufe schalten und Zeitpunkt merken. Die for-Schleifen müssen da raus und durch if mit milis ersetzt werden. Schau Dir nochmal BlinkWithoutDelay an und lies die Nachtwächtererklärung und die Erklärung von Arne. Gruß Tommy "Wer den schnellen Erfolg sucht, sollte nicht programmieren, sondern Holz hacken." (Quelle unbekannt) |
|||
22.12.2020, 14:46
Beitrag #3
|
|||
|
|||
RE: Weiches Auf- und Abblenden mit delay vs millis()
So wie du millis() einsetzt, funktioniert es nicht.
Die Funktion millis() ist deine Uhr und hat ständig einen anderen Wert. Lass dir millis() mal im seriellen Monitor und in der Loop anzeigen. Gruß Dieter I2C = weniger ist mehr: weniger Kabel, mehr Probleme. ![]() |
|||
22.12.2020, 14:49
Beitrag #4
|
|||
|
|||
RE: Weiches Auf- und Abblenden mit delay vs millis()
(22.12.2020 14:45)Tommy56 schrieb: Du hast millis noch nicht verstanden. Ich werde milli(s) wohl nie verstehen. Mathematik und Logik waren noch nie meine Stärke. O.K. nach dem xten Versuch - Projekt gestorben. Trag mich mal aus der Mitgliedliste aus, ich werde mir in Zukunft wohl besser Bausätze kaufen. Schöne Feiertage und bleib gesund. |
|||
22.12.2020, 14:52
Beitrag #5
|
|||
|
|||
RE: Weiches Auf- und Abblenden mit delay vs millis()
(22.12.2020 14:49)do1xxy schrieb: Ich werde milli(s) wohl nie verstehen. Mathematik und Logik waren noch nie meine Stärke. O.K. nach dem xten Versuch - Projekt gestorben. Trag mich mal aus der Mitgliedliste aus, ich werde mir in Zukunft wohl besser Bausätze kaufen. Du gibst aber schnell auf. Deine Funkamateurlizenz hast du doch auch nicht in einem Monat gemacht ? Gruß Dieter I2C = weniger ist mehr: weniger Kabel, mehr Probleme. ![]() |
|||
22.12.2020, 14:52
Beitrag #6
|
|||
|
|||
RE: Weiches Auf- und Abblenden mit delay vs millis()
(22.12.2020 14:49)do1xxy schrieb: Ich werde milli(s) wohl nie verstehen. Mathematik und Logik waren noch nie meine Stärke. O.K. nach dem xten Versuch - Projekt gestorben.Solange Du Dir das selbst einredest, wird sich daran auch nichts ändern. Gruß Tommy "Wer den schnellen Erfolg sucht, sollte nicht programmieren, sondern Holz hacken." (Quelle unbekannt) |
|||
22.12.2020, 14:57
Beitrag #7
|
|||
|
|||
RE: Weiches Auf- und Abblenden mit delay vs millis()
(22.12.2020 14:52)hotsystems schrieb:(22.12.2020 14:49)do1xxy schrieb: Ich werde milli(s) wohl nie verstehen. Mathematik und Logik waren noch nie meine Stärke. O.K. nach dem xten Versuch - Projekt gestorben. Trag mich mal aus der Mitgliedliste aus, ich werde mir in Zukunft wohl besser Bausätze kaufen. Normalerweise beiß ich mich in Problemen fest und löse sie auch, aber das Thema millis() stößt bei mir auf eine Blockade. Mit 63 Jahren ist zumindest meine Auffassungsgabe nicht mehr so gut. So geht es mir auch bei C4FM. Ist nun mal so. |
|||
22.12.2020, 15:00
Beitrag #8
|
|||
|
|||
RE: Weiches Auf- und Abblenden mit delay vs millis()
(22.12.2020 14:57)do1xxy schrieb: Normalerweise beiß ich mich in Problemen fest und löse sie auch, aber das Thema millis() stößt bei mir auf eine Blockade. Mit 63 Jahren ist zumindest meine Auffassungsgabe nicht mehr so gut. So geht es mir auch bei C4FM. Ist nun mal so.So jung und schon so blockiert? Gruß Tommy "Wer den schnellen Erfolg sucht, sollte nicht programmieren, sondern Holz hacken." (Quelle unbekannt) |
|||
|
|
Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste