Go Down

Topic: Einsteigerfrage Example "Blink" (Read 1 time) previous topic - next topic

mx55

Hallo,

ich habe vor einen Sketch fuer eine bestimmte Funktion zu entwickeln. Als Anfänger habe ich zuerst mal versucht eines der Beispiele (Blink) zum Laufen zu bringen. Aber leider scheitere ich schon dabei. Die LED blinkt nicht! Weder die eingebaute an Pin 13, noch eine andere an jedem beliebigen Pin. Die LEDs leuchten dauernd.
Hardware: Arduiono Uno Rev. 3
Software : Arduino 1.0 unter SuSE Linux 12.1

Hier mal der Code aus dem Beispiel "Blink", der nicht so funktioniert wie er sollte:
Code: [Select]
/*
  Blink
  Turns on an LED on for one second, then off for one second, repeatedly.

  This example code is in the public domain.
*/

void setup() {               
  // initialize the digital pin as an output.
  // Pin 13 has an LED connected on most Arduino boards:
  pinMode(13, OUTPUT);     
}

void loop() {
  digitalWrite(13, HIGH);   // set the LED on
  delay(1000);              // wait for a second
  digitalWrite(13, LOW);    // set the LED off
  delay(1000);              // wait for a second
}


Dann habe ich 2 serielle Ausgaben eingefuegt, um im Serial Monitor zu sehen ob ueberhaupt ein programmablauf stattfindet:
Code: [Select]
/*
  Blink
  Turns on an LED on for one second, then off for one second, repeatedly.

  This example code is in the public domain.
*/

void setup() {               
  Serial.begin(9600);
  // initialize the digital pin as an output.
  // Pin 13 has an LED connected on most Arduino boards:
  pinMode(13, OUTPUT);     
}

void loop() {
  digitalWrite(13, HIGH);   // set the LED on
  delay(1000);              // wait for a second
  Serial.println("Eingeschaltet"); 
  digitalWrite(13, LOW);    // set the LED off
  delay(1000);              // wait for a second
  Serial.println("Ausgeschaltet"); 
}


Und nun, oh Wunder, es funktioniert. Die LEDs blinken und die Ausgabe im Serial Monitor (Eingeschaltet/Ausgeschaltet) ist auch korrekt. Es ist ja schön, das es funktioniert, aber ich wuerde das Ganze dann doch gerne verstehen.
Deshalb meine Frage:
Kann mir jemand sagen, wo mein Fehler ist?

Gruß
Christoph

mkl0815

Der erste Sketch sollte eigentlich auch funktionieren. Bist Du sicher, das der korrekt übertragen wurde? Wie hast Du denn die "externe" LED angeschlossen?

Ketchup

#2
May 16, 2012, 07:04 pm Last Edit: May 16, 2012, 07:13 pm by Ketchup Reason: 1
mkl0815 hat recht.

Der erste Sketch Funktioniert, habe den Code 1:1 kopiert und kurz auf einen Uno V3 gespielt, die interne LED (Pin 13) blinkt.
Lass Dich nicht von solchen Dingen runterziehen, versuchs doch nochmal.

PS: Dein zweiter Sketch schreibst du besser so, dann stimmt auch der Text zu der LED:

Code: [Select]
/*
 Blink
 Turns on an LED on for one second, then off for one second, repeatedly.

 This example code is in the public domain.
*/

void setup() {                
 Serial.begin(9600);
 // initialize the digital pin as an output.
 // Pin 13 has an LED connected on most Arduino boards:
 pinMode(13, OUTPUT);    
}

void loop() {
 digitalWrite(13, HIGH);   // set the LED on
 Serial.println("Eingeschaltet");  
 delay(1000);              // wait for a second
 digitalWrite(13, LOW);    // set the LED off
 Serial.println("Ausgeschaltet");  
 delay(1000);              // wait for a second
}


:-)

Gruss Kay

voithian

Ich meine, ich hätte mal gehört, dass es unter Linux Probleme mit der delay()-Funktion geben kann (abhängig von der Compiler-Version und der Version der Libraries). Allerdings treten die nicht auf, wenn zusätzlicher Code zum Blink-Sketch dazugepackt wird.

Siehe auch: http://www.shredzone.de/cilla/page/344/arduino-auf-fedora-15-einrichten.html

@Ketchup: Hast du den ersten Blink-Sketch unter Windows oder unter einem Linux ausprobiert?

Wolfgang

Ketchup


@Ketchup: Hast du den ersten Blink-Sketch unter Windows oder unter einem Linux ausprobiert?


In Windows.
Linux habe ich nicht zum Testen.

Kay

Go Up