- 12V Akku mit 280 Ah bauen         
Ergebnis 1 bis 10 von 14

Thema: Arduino Interrupt

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Neuer Benutzer Öfters hier
    Registriert seit
    17.05.2009
    Beiträge
    12
    Hallo zusammen.
    Ich versuche geraden die interrupt Funktion kennen zu lernen.
    Ich würde gern bei einem LOW einen Text ausgeben.
    Das Problem dabei, immer wenn der Arduino das LOW erhält stürzt er ab.
    Ich gehe davon aus, dass meine "Schaltung" auf dem Steckbrett falsch ist.

    D3 mit einem Kabel auf 5V (HIGH) und einen Widerstand 1K-Ohm auf GND (LOW)

    Wenn der Pin die 5V erhält, läuft das Ganze, sobald ich das 5V Kabel entferne stürzt der Arduino ab.

    Code:
    void setup(){
      Serial.begin(9600);
      attachInterrupt(1, interrupt, LOW);
    }
     
    void loop()
    {
      for (int i = 0; i < 1000; i++)
      {
        Serial.println(i);
        delay(100);
      }
    }
     
    void interrupt()
    {
     
      Serial.println("Hallo");
    }
    Dank für die Hilfe

    ---------------------------------------------------------------------------------------------------------------

    Nachtrag:
    Habe soeben bemerkt, dass das Serial.println das Problem war....

    So funktioniert es

    Code:
    int hallo = 0;
    
    void setup()
    {
      Serial.begin(9600);
      attachInterrupt(1, interrupt, LOW);
    }
     
    void loop()
    {
      for (int i = 0; i < 1000; i++)
      {
        if (hallo == 1)
        {
          Serial.println("Hallo");
          hallo = 0;
          delay (100);
        }
        else
        {
          Serial.println(i);
          delay(100);
        }
      }
    }
     
    void interrupt()
    {
     hallo = 1;
     delay(100);
    }
    Geändert von Bongo_1st (23.10.2015 um 22:47 Uhr)

  2. #2
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    17.02.2009
    Ort
    Aachen
    Beiträge
    1.181
    Ich bin irgendwann dazu übergegangen, auf Interrupts zu verzichten, da ich auch öfters das Problem hatte, einen freeze/unvorhersehbares Verhalten zu bekommen.
    Aber evtl. befasse ich mich bald nochmal damit. An sich ist es ja ein schönes Feature.
    Danke, dass du deine Problemlösung mit uns teilst

  3. #3
    Erfahrener Benutzer Robotik Einstein Avatar von Rabenauge
    Registriert seit
    13.10.2007
    Ort
    Osterzgebirge
    Alter
    57
    Beiträge
    2.214
    Nö, das Problem liegt wo anders.
    Delay() funktioniert beim Arduino _nicht_ innerhalb eines Interrupt-Handlers.
    https://www.arduino.cc/en/Reference/AttachInterrupt
    Grüssle, Sly
    ..dem Inschenör ist nix zu schwör..

Ähnliche Themen

  1. Arduino vs. Arduino: Kampf um die Arduino IDE
    Von Roboternetz-News im Forum Neuigkeiten / Technik-News / Nachrichten / Aktuelles
    Antworten: 0
    Letzter Beitrag: 04.04.2015, 18:21
  2. Rosenkrieg: Arduino zahlt Arduino keine Lizenzgebühren
    Von Roboternetz-News im Forum Neuigkeiten / Technik-News / Nachrichten / Aktuelles
    Antworten: 0
    Letzter Beitrag: 20.03.2015, 09:00
  3. Arduino: laufendes Programm auf Arduino Uno beenden?
    Von Ford Prefect im Forum Arduino -Plattform
    Antworten: 2
    Letzter Beitrag: 15.06.2014, 09:25
  4. Arduino + WLAN = Arduino Yún
    Von Roboternetz-News im Forum Neuigkeiten / Technik-News / Nachrichten / Aktuelles
    Antworten: 0
    Letzter Beitrag: 04.06.2013, 14:50
  5. [ERLEDIGT] [ARDUINO] 2 Motoren + Servo mit dem Arduino Uno steuern
    Von Torrentula im Forum C - Programmierung (GCC u.a.)
    Antworten: 0
    Letzter Beitrag: 31.08.2011, 17:31

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

fchao-Sinus-Wechselrichter AliExpress