INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.

Antwort schreiben 
 
Themabewertung:
  • 0 Bewertungen - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
Wie setze ich Verzögerungen richtig ein?
18.12.2019, 08:09
Beitrag #1
Wie setze ich Verzögerungen richtig ein?
Hallo zusammen,

mir tut sich gerade ein Grundsätzliches Problem auf.
Ich lese einige Sensoren ab und stelle diese u.a. auf einem Display dar.
Allerdings lese ich die Sensoren nicht pausenlos aus sondern habe in der
Loop ein delay von 10 Sekunden (Verzögerung soll später noch größer werden, etwa 1 Minute).

Nun möchte ich aber das Display nicht permanent eingeschaltet lassen und
will mit einen Schalter oder Taster das Backlight einschalten.

Und genau da habe ich nun das Problem, das mir das Delay dann einen Strich durch die Rechnung macht. Ich habe kein Lust da 60 Sekunden die Taste zu drücken bis der Loop mitbekommt das ich die Taste drücke.

Wie macht man so etwas richtig???
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
18.12.2019, 08:28
Beitrag #2
RE: Wie setze ich Verzögerungen richtig ein?
(18.12.2019 08:09)DO3GE schrieb:  .....
Wie macht man so etwas richtig???

Da verwendet man die Funktion "millis()", siehe auch dazu das Beispiel BlinkWithoutDelay aus den Beispielen in der IDE.
Dazu gibt es auch eine sehr schöne Erklärung hier im Forum.

Gruß Dieter

I2C = weniger ist mehr: weniger Kabel, mehr Probleme. Cool
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
18.12.2019, 09:19
Beitrag #3
RE: Wie setze ich Verzögerungen richtig ein?
Super !!!

Verstanden und funktioniert.

Vielen Dank
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
18.12.2019, 09:45
Beitrag #4
RE: Wie setze ich Verzögerungen richtig ein?
Prima,
freut mich, dass es funktioniert.

Gruß Dieter

I2C = weniger ist mehr: weniger Kabel, mehr Probleme. Cool
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
18.12.2019, 11:18
Beitrag #5
RE: Wie setze ich Verzögerungen richtig ein?
Noch schöner geht es per Timer und Interrupt, hier eine hübsche Erklärung:

http://laagewitt.de/wp-content/uploads/2...rrupts.pdf

Gruß
GuaAck
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
18.12.2019, 12:10
Beitrag #6
RE: Wie setze ich Verzögerungen richtig ein?
(18.12.2019 08:09)DO3GE schrieb:  Verzögerung soll später noch größer werden, etwa 1 Minute.

(18.12.2019 11:18)GuaAck schrieb:  Noch schöner geht es per Timer und Interrupt....
Dein Ernst?

Für eine Zeitkritische Anwendung wie "etwa 1 Minute" einen Interrupt zu verwenden.

Gruß Fips

Meine Esp8266 & ESP32 Projekte
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
18.12.2019, 13:36
Beitrag #7
RE: Wie setze ich Verzögerungen richtig ein?
(18.12.2019 12:10)Fips schrieb:  Dein Ernst?

Für eine Zeitkritische Anwendung wie "etwa 1 Minute" einen Interrupt zu verwenden.

Gruß Fips

Das kann ich nur unterstützen.
Für eine derartige Anwendung einen Interrupt zu missbrauchen, ist für einen "Anfänger" ein ganz schlechter Vorschlag.

Interrupts werden leider viel zu oft verkannt und falsch eingesetzt.

Gruß Dieter

I2C = weniger ist mehr: weniger Kabel, mehr Probleme. Cool
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
18.12.2019, 14:21
Beitrag #8
RE: Wie setze ich Verzögerungen richtig ein?
(18.12.2019 13:36)hotsystems schrieb:  Für eine derartige Anwendung einen Interrupt zu missbrauchen, ist für einen "Anfänger" ein ganz schlechter Vorschlag.
Nicht nur für einen "Anfänger" Wink .

Gruß, Franz-Peter
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
Antwort schreiben 


Möglicherweise verwandte Themen...
Thema: Verfasser Antworten: Ansichten: Letzter Beitrag
  Wie die HW-Seriellen des Mega richtig einsetzen? DO3GE 2 305 02.12.2019 14:53
Letzter Beitrag: DO3GE
Question Programm läuft nicht richtig CMeeep 22 2.146 04.07.2019 21:58
Letzter Beitrag: Franz54
  Unterroutinenaufruf- wie gehts richtig? Telefonmann 12 1.368 04.05.2019 13:51
Letzter Beitrag: MicroBahner
  [includes]Wie gebe ich den Pfad der .h-Datei richtig an ManniP 6 833 28.04.2019 09:29
Letzter Beitrag: Fips
  HttpBasicAuth richtig einbinden Matroks12 2 800 18.03.2019 11:01
Letzter Beitrag: Bitklopfer
  Timer Richtig dastellen Harlekin 5 859 04.02.2019 12:54
Letzter Beitrag: Tommy56
  Problem mit Displayanzeige LCD2004 bzw. nicht Richtig magnum1795 39 4.328 18.12.2018 08:15
Letzter Beitrag: magnum1795
  Rotaryencoder funktioniert nicht richtig 123clever 19 3.976 20.02.2018 22:22
Letzter Beitrag: rpt007
Question Rechnen in C - Was ist denn nun richtig? Stephan_56 17 4.401 27.03.2016 11:31
Letzter Beitrag: ardu_arne
  LCD schreibt mal richtig,mal Krickel? malsehen 14 2.730 21.03.2016 09:21
Letzter Beitrag: hotsystems

Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste