Weiches Auf- und Abblenden mit delay vs millis()
|
22.12.2020, 15:47
(Dieser Beitrag wurde zuletzt bearbeitet: 22.12.2020 15:48 von hotsystems.)
Beitrag #17
|
|||
|
|||
RE: Weiches Auf- und Abblenden mit delay vs millis()
(22.12.2020 15:39)Tommy56 schrieb: @hotsystems: Diese Lib kannte ich auch noch nicht. Hallo Tommy, freut mich, dass ich dir auch mal was "neues" zeigen konnte. Ja, die Lib ist bei mir in den Bewegungsmeldern für meine Led-Lampensteuerungen. Ist sehr komfortabel für diese Steuerung. Musste ich "leider" nehmen, weil ich mit der Lib von MicroBahner auf dem Tiny nicht klar kam. Die habe ich aber auch schon in "geile Projekte" genutzt. ![]() Gruß Dieter I2C = weniger ist mehr: weniger Kabel, mehr Probleme. ![]() |
|||
22.12.2020, 15:51
Beitrag #18
|
|||
|
|||
RE: Weiches Auf- und Abblenden mit delay vs millis()
(22.12.2020 15:37)do1xxy schrieb: Hallo Dieter, Ok, Armin, versuche es damit mal, ist auch gut beschrieben. Ebenso schöne Feiertage und gesund bleiben. Gruß Dieter I2C = weniger ist mehr: weniger Kabel, mehr Probleme. ![]() |
|||
22.12.2020, 18:44
(Dieser Beitrag wurde zuletzt bearbeitet: 22.12.2020 18:48 von Franz54.)
Beitrag #19
|
|||
|
|||
RE: Weiches Auf- und Abblenden mit delay vs millis()
(22.12.2020 15:04)do1xxy schrieb: auch wenn ich sehr ungern damit hausieren gehe: nach einer schweren Gehirnhautentzündung 2 Jahre Reha um wieder annähernd in dem Zustand zu kommen in dem ich davor befand. Da kommt es schon mal zu einigen nicht so erwünschten Aussetzern. Bin jetzt fleißiger ... for Dummies Bücher Leser. Cést la vie. Das kenne ich. Ich hatte vor 25 Jahren eine unerkannte Borrelliose. Hoch leben die Ärzte die mich Jahrelang auf "Grippe" behandelt haben. Ein besonders verblödetert Arzt hat sogar behauptet, dass das lauter immer wieder neue "Grippeerkrankungen" ware. Wie der Blödi darauf kam weiß ich nicht, denn er wusste dass die ganz schwere Zeit 2 Jahre am Stück war. Aber da er sich die zwei Jahre mit einer Grippe nicht erklären konnte, hat er einfach für sich entschieden dass das nicht eine Erkrankung war, sondern viele einzelne. Wenn man solche Ärzte hat, ...... ![]() ![]() Diese Borrelliose hat meine Logik Abteilung im Oberstübchen auch schwer gebeutelt, und ich bin auch heute noch weit entfernt von 50% meiner vorherigen Leistung im Obestübchen. Aber ich versuche trotzdem alles wieder auf die Reihe zu bekommen, ist halt nur mit x-facher Zeit von vorher zu schaffen. ![]() ![]() Alles Gute weiterhin. Franz https://www.youtube.com/watch?v=Fnzn85oWM_Q Hier was zum Thema Deutsche Politik ![]() Und hier zum Thema richtige Politik ![]() |
|||
22.12.2020, 19:01
(Dieser Beitrag wurde zuletzt bearbeitet: 22.12.2020 19:09 von Franz54.)
Beitrag #20
|
|||
|
|||
RE: Weiches Auf- und Abblenden mit delay vs millis()
(22.12.2020 15:37)do1xxy schrieb: Aber milli() - die totale Blockade. kennt man ja auch als Schüler, bei bestimmten Lehrern ging nichts mehr. Ich schaue mir das mal an, vielleicht kommt es dann zur Initialzündung. Du musst von dem Gedanken weg, dass du mit Millis die "delay Bremse" ersetzt. Das Programm arbeitet den ganzen Loop ohne diese delays alle paar Millisekunden immer wieder durch. Und in jedem Durchgang musst du schauen, wieviele Millisekunden vergangen sind. Wenn eine bestimmte Zeit vergangen ist, sagst du JETZT ist es Zeit eine bestimmte Aktion durchzuführen. Wenn du die Aktion ausgeführt hast, sagst du einem Merker bei welcher Zeitmarke (Millis) das aktuell ausgeführt wurde, und der Loop geht weiter. Wenn es noch nicht so weit ist, gehst du wieder weiter ohne eine Aktion. Also KEINE Stopps, sondern nur alle paar Millisekunden (in jedem neuen Loopdurchlauf) erneut schauen, ob es Zeit für eine Aktion ist. Und JEDE Aktion hat ihren eigenen Zeitmarker. Wenn du mehr Aktionen hast, testest du eben für jede Aktion an einer eigenen Stelle im Loop, ob es Zeit für diese Aktion ist. loop if (zeit für aktion 1) dann { ausführen Zeitmarker1 neu setzen } if (zeit für aktion 2) dann { ausführen Zeitmarke2 neu setzen } if (zeit für aktion 3) dann { ausführen Zeitmarke3 neu setzen } loop ende https://www.youtube.com/watch?v=Fnzn85oWM_Q Hier was zum Thema Deutsche Politik ![]() Und hier zum Thema richtige Politik ![]() |
|||
22.12.2020, 19:15
Beitrag #21
|
|||
|
|||
RE: Weiches Auf- und Abblenden mit delay vs millis()
Wenn man eine wirklich gleichmäßige Änderung von Werten haben will, sollte man auf Hardware-Timer zurückgreifen. Bei allem andern besteht immer die Gefahr von längeren Laufzeiten des Codes an irgendeiner Stelle und dann kommt es zu Aussetzern (Hängern). Es geht zwar auch ohne, aber wirklich einfacher, eine gleichmäßige Änderung zu erzielen, wäre es mit einem Timer.
Mit freundlichem Gruß |
|||
22.12.2020, 19:18
Beitrag #22
|
|||
|
|||
RE: Weiches Auf- und Abblenden mit delay vs millis()
(22.12.2020 19:15)Nichtraucher schrieb: Bei allem andern besteht immer die Gefahr von längeren Laufzeiten des Codes an irgendeiner Stelle und dann kommt es zu Aussetzern (Hängern).Nach meiner Erfahrung eigentlich nur bei schlechter Programmierung oder zu leistungsschwachem Prozessor für die LED-Anzahl. Für wirklich gleichmäßige Änderung muss man eher die Nichtlinearität rausrechnen. Gruß Tommy "Wer den schnellen Erfolg sucht, sollte nicht programmieren, sondern Holz hacken." (Quelle unbekannt) |
|||
22.12.2020, 19:25
(Dieser Beitrag wurde zuletzt bearbeitet: 22.12.2020 19:28 von Franz54.)
Beitrag #23
|
|||
|
|||
RE: Weiches Auf- und Abblenden mit delay vs millis()
(22.12.2020 19:15)Nichtraucher schrieb: Wenn man eine wirklich gleichmäßige Änderung von Werten haben will, sollte man auf Hardware-Timer zurückgreifen. Bei allem andern besteht immer die Gefahr von längeren Laufzeiten des Codes an irgendeiner Stelle und dann kommt es zu Aussetzern (Hängern). Wenn man im Code keine Bremsen einbaut, dann gibt es vielleicht Unterschiede im Loop - Durchlauf von ein paar Millisekunden. Die merkst du gar nicht. Oder willst du sagen dass du 3-4 Millisekunden (Tausenstel Sekunde) per Auge erkennst?? Diese dauernde Gehabe mit den Interrupten für solche völlig Zeitunkritische Abläufe geht mir auf die Nerfen. Das ist wie mit Kanonen auf Spatzen schießen. https://www.youtube.com/watch?v=Fnzn85oWM_Q Hier was zum Thema Deutsche Politik ![]() Und hier zum Thema richtige Politik ![]() |
|||
23.12.2020, 12:53
Beitrag #24
|
|||
|
|||
RE: Weiches Auf- und Abblenden mit delay vs millis()
Hallo Franz,
es geht nicht darum, was ich erkenne oder was nicht. Dass es funktionieren kann, schrieb ich ja schon. Arduino macht die Timer-Handhabung wirklich extremst einfach. Da ist weder Vodoo dabei, noch anderes Hexenwerk. Es ist simpel und effektiv. Für dauernde Änderungen, die in gleichmäßigen Abständen stattfinden sollen, sind Timer gemacht. Für so was sind die in der Hardware eingebaut. Ebenso, um auf äußere Ereignisse direkt reagieren zu können. Wenn hier ein Timer aktiviert wird, der den Wert (oder auch mehrere) in- oder dekrementiert, braucht man nur noch Ausgangswerte zu setzen und zu prüfen ob Zielwerte schon erreicht sind. Einfacher geht es nicht. Das hat doch nichts mit " Gehabe mit den Interrupten" zu tun. Gruß |
|||
|
|
Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste