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
LED Blinken lassen ohne delay und mit einem Ende
26.10.2014, 12:46
Beitrag #1
LED Blinken lassen ohne delay und mit einem Ende
Hallo,

ich versuche als eine LED als Testexemplar für mein Magnetventil dreimal blinken zu lassen. Danach soll die LED ausgehen. Leider komme ich da nicht voran.

Mit dem delay befehl geht es:

void setup()
{
pinMode(12, OUTPUT);
int i = 0;
while (i<5)
{
digitalWrite (12,HIGH);
delay (1000);
digitalWrite (12,LOW);
delay (1000);
i ++;
}
digitalWrite(12,LOW);
}

void loop()
{
}

aber mit dem millis geht es nicht, es blink zweimal und dann bleibt die LED wieder stehen.

Kann mir da jemand einen Tip geben?

int i =0;
byte ledPin=12; // LED liegt am digitalen PIN 12
boolean value=LOW; // Startwert der LED
unsigned long previousMillis=0; //speichert wieviele Sekunden seit der letzten Veränderung vergangen ist
unsigned long interval=1000; //Intervallänge

void setup ()
{
pinMode(ledPin,OUTPUT);
}

void loop()
{
while (i<3)
if(millis()-previousMillis > interval)
{
previousMillis = millis();// aktueller Zeitspeicher
value = !value; // Zustand der LED ändern
digitalWrite(ledPin,value);
i++;
// versuch - geht nicht digitalWrite(ledPin, LOW);
}
}

Erwarte das Schlimmste, erhoffe das Beste.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
26.10.2014, 13:00
Beitrag #2
RE: LED Blinken lassen ohne delay und mit einem Ende
Hi,
versuch mal statt "while (i <3)" das hier: "if (i <6)".
Gruß,
Thorsten

Falls ich mit einer Antwort helfen konnte, wuerde ich mich freuen, ein paar Fotos oder auch ein kleines Filmchen des zugehoerigen Projekts zu sehen.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
26.10.2014, 13:13
Beitrag #3
RE: LED Blinken lassen ohne delay und mit einem Ende
(26.10.2014 13:00)Thorsten Pferdekämper schrieb:  Hi,
versuch mal statt "while (i <3)" das hier: "if (i <6)".
Gruß,
Thorsten

Das funktioniert, aber warum? Muss der Code 6x ausgeführt werden? Jetzt muss ich nur noch hinbekommen den code für viele led´s zu schreiben

Danke

Andreas

Erwarte das Schlimmste, erhoffe das Beste.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
26.10.2014, 19:33
Beitrag #4
RE: LED Blinken lassen ohne delay und mit einem Ende
(26.10.2014 13:13)EddyErdmann schrieb:  Das funktioniert, aber warum? Muss der Code 6x ausgeführt werden? Jetzt muss ich nur noch hinbekommen den code für viele led´s zu schreiben
Du invertierst in jedem Durchlauf den Zustand der LED. Für einmal blinken brauchst Du also zwei Durchläufe, einen für "an", einen für "aus". Da Du dreimal blinken haben wolltest macht das 2 * 3 = 6 Durchläufe.

Falls ich mit einer Antwort helfen konnte, wuerde ich mich freuen, ein paar Fotos oder auch ein kleines Filmchen des zugehoerigen Projekts zu sehen.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
Antwort schreiben 


Möglicherweise verwandte Themen...
Thema: Verfasser Antworten: Ansichten: Letzter Beitrag
  LED blinken zeitversetzt starten Sky-Shadow 6 187 17.06.2017 15:12
Letzter Beitrag: Sky-Shadow
  delay(...) im Code ok? donut 4 185 08.06.2017 20:16
Letzter Beitrag: donut
  Brauche Zeitverzögerung delay/millis/timer? Spiecky 17 726 15.04.2017 09:41
Letzter Beitrag: hotsystems
  Bild in eine html Seite auf einem ESP8266 einfügen rockzm 1 258 06.04.2017 14:57
Letzter Beitrag: Tommy56
  Probleme mit einem Sketch für einen LED Cube 5x5x5 Frank1234 5 333 13.03.2017 12:12
Letzter Beitrag: Tommy56
  Mehrere HX711 mit einem Arduino Uno be14b029 5 403 08.02.2017 18:09
Letzter Beitrag: Binatone
  8 Taster an einem Pin Kitt 9 661 04.02.2017 18:51
Letzter Beitrag: ardu_arne
  2 ESP8266 miteinander kommunizieren lassen NormanIGB 17 1.662 29.01.2017 14:14
Letzter Beitrag: NormanIGB
  TimeAlarm Bibliothek delay() anweisung renid55 0 226 03.01.2017 21:13
Letzter Beitrag: renid55
  Ausgang "blinken" lassen NormanIGB 11 833 28.12.2016 17:20
Letzter Beitrag: Tommy56

Gehe zu:


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