Go Down

Topic: 10 sekunden HIGH 2 sekunden LOW// ich schaffs einfach nicht -.- WITHOUTDELAY!!! (Read 895 times) previous topic - next topic


hey leutz ich hab wieder ein kleines problem! kann mir einer ein "sketch" umschreiben damit die led 10 sekunden an ist und 2 sekunden aus ist??

hier der bsp. "sketch";
Code: [Select]

/* Blink without Delay

Turns on and off a light emitting diode(LED) connected to a digital 
pin, without using the delay() function.  This means that other code
can run at the same time without being interrupted by the LED code.

The circuit:
* LED attached from pin 13 to ground.
* Note: on most Arduinos, there is already an LED on the board
that's attached to pin 13, so no hardware is needed for this example.

created 2005
by David A. Mellis
modified 8 Feb 2010
by Paul Stoffregen

This example code is in the public domain.


// constants won't change. Used here to
// set pin numbers:
const int ledPin =  13;      // the number of the LED pin

// Variables will change:
int ledState = LOW;             // ledState used to set the LED
long previousMillis = 0;        // will store last time LED was updated

// the follow variables is a long because the time, measured in miliseconds,
// will quickly become a bigger number than can be stored in an int.
long interval = 1000;           // interval at which to blink (milliseconds)

void setup() {
  // set the digital pin as output:
  pinMode(ledPin, OUTPUT);     

void loop()
  // here is where you'd put code that needs to be running all the time.

  // check to see if it's time to blink the LED; that is, if the
  // difference between the current time and last time you blinked
  // the LED is bigger than the interval at which you want to
  // blink the LED.
  unsigned long currentMillis = millis();

  if(currentMillis - previousMillis > interval) {
    // save the last time you blinked the LED
    previousMillis = currentMillis;   

    // if the LED is off turn it on and vice-versa:
    if (ledState == LOW)
      ledState = HIGH;
      ledState = LOW;

    // set the LED with the ledState of the variable:
    digitalWrite(ledPin, ledState);




Wo hapert's? (bitte um Entschuldigung an all jene die mit diesem Wort nichts anfangen können)

Was ist Dein Problem?

Zuert  schaltetst Du den Ausgang auf H und kontrollierst ob 10 Sekunden vergangen sind und schaltest dann auf L. Dann schaust Du ob 2 (bzw 12 Sekunden seit Anfang) verganen sind und beginnst von vorne.

Grüße Uwe


habs geschafft :))))

Code: [Select]

  unsigned long Sprudel2currentMillis = millis();
     if(Sprudel2currentMillis - Sprudel2previousMillis > Sprudel2intervalOff && Sprudel2State == LOW) {
    Sprudel2previousMillis = Sprudel2currentMillis; 
    Sprudel2State = HIGH;
    //digitalWrite(relais4, Sprudel2State);
    digitalWrite(ledPin4, Sprudel2State);
    Sprudel2intervalOff = random(1000, Sprudel2MAXOn);
    if(Sprudel2currentMillis - Sprudel2previousMillis > Sprudel2intervalOn && Sprudel2State == HIGH) {
    Sprudel2previousMillis = Sprudel2currentMillis; 
    Sprudel2State = LOW;
    //digitalWrite(relais4, Sprudel2State);
    digitalWrite(ledPin4, Sprudel2State);
    Sprudel2intervalOn = random(1000, Sprudel2MAXOff);

Falls einer braucht :)

danke uwefed <3 :))

Udo Klein

Check out my experiments http://blog.blinkenlight.net


na weils doch sonst bei dem punkt stehn bleibt!! und in der zeit laufen andere sachen nicht weiter ;)

Go Up

Please enter a valid email to subscribe

Confirm your email address

We need to confirm your email address.
To complete the subscription, please click the link in the email we just sent you.

Thank you for subscribing!

via Egeo 16
Torino, 10131