Interrupts am Arduino einsetzten | Funktionsübersicht und die verschiedenen Modi

Поділитися
Вставка
  • Опубліковано 30 вер 2024
  • In diesem Video zeige ich euch, wie man an einem digitalen Input-Pin einen Interrupt aktiviert. Nach ein paar Grundlagen zu diesem Thema zeige ich euch die verschiedenen Modi (RISING, FALLING, CHANGE & LOW) in einem Praxistest. Außerdem erzähle ich euch, was während eines Interrupts nicht funktioniert und wie man Inputs entprellen kann.
    Alle weiteren Infos gibt es wie immer am Blog: www.aeq-web.co...
    Tags: #Arduino #Interrupt #aeqweb

КОМЕНТАРІ • 14

  • @Amperekaefer
    @Amperekaefer 4 роки тому +2

    *Hallo Alex, vielen Dank* für dieses interessante Video.
    Bitte weiter so...
    Gruss, Roger

  • @CarAndProf
    @CarAndProf 4 роки тому +2

    Wie Süss: *Wenn ein unvorhersehbares Ereignis eintritt, z.b. Ein Anwender drückt einen Taster*
    Ist nicht böse gemeint :-D

    • @AEQWEB
      @AEQWEB  4 роки тому

      Haha ist so. Woher soll der Arduino wissen wann du den Taster drückst? :)

    • @CarAndProf
      @CarAndProf 4 роки тому

      @@AEQWEB ich dachte an eine *Don't Push the Button!* Situation Inc. *_DAU_ . Was wohl Passiert wenn man Ihn drückt?
      Ergo: "der Handwerker ist noch nicht mit dem einpacken des Werkzeugs fertig, und schon hat jemand auf den Knopf gedrückt."
      *DAU -> Dümmster anzunehmender User.

    • @user-pr3ed4bd9b
      @user-pr3ed4bd9b 4 роки тому

      Aus Softwareseite ist das schon richtig ausgedrückt.

  • @Diskus79
    @Diskus79 3 роки тому +1

    Sehr gut erklärt, danke

  • @fumanschu13
    @fumanschu13 4 роки тому +1

    Sehr cool erklärt. Super danke👍🏻

  • @dano5143
    @dano5143 2 роки тому

    Super erklärt; aber ob ich jemals mein Problem gelöst bekomme???
    Ich würde gern per Tastendruck verschiedene Lichtloops (Jeder Lichtloop ist für sich in Dauerschleife) schalten. Ist da der Interrupt richtig um immer eins hochzählen zu lassen.

  • @Mellomi
    @Mellomi 3 роки тому

    Um zu verhinden das der Interrupt mehrfach ausgelöst wird kann man auch unter Setup "pinMode(interruptPin, INPUT_PULLUP);" einfügen da der Arduino schon einen Pullup integriert hat.

    • @hanspeterbestandig2054
      @hanspeterbestandig2054 3 роки тому +3

      Hilfst Du mir bitte das zu verstehen? Inwiefern sorgt das Aktivieren eines Pullups hier für Abhilfe? Das Problem tritt doch durch Kontaktprellen auf und das beseitigt man doch nicht durch solche Maßnahmen!
      Hier muss entweder eine Hardwarelösung her! Alo z.B. ein R/C-Glied (Tiefpass) mit Tau ~ 3*R*C, wobei Tau der größten Kontaktprellzeit entspricht. Oder in Software indem man den Kontakt im Zeitintevall > 2 Tau "pollt".
      Daher hat Alex meiner Meinung nach das Beispiel Interruptbehandlung in Form eines mechanischen Eingangstasters nicht wirklich weise gewählt, weil gerade DA schlagen bedingt durch das Kontaktprellen und die zeitnahe Interruptreaktion alle Kontaktprellereignisse gnadenlos in der Software auf. ;-) Also ich hätte für die Erklärung eher deterministischere Ereignisse (z.B. Timerevents) als Beispiel ausgesucht... ;-)
      Andererseits sieht man an Alex gewähltem Beispiel mit dem prellenden Taster auch wie schnell Interrupts reagieren, indem da jedes Prellen in SW sofort aufschlägt ;-)

  • @samynwaisser376
    @samynwaisser376 3 роки тому

    Hallo Alex,
    danke für das gut erklärte Video. Gibt es eine Möglichkeit Deinen Sketch so umzuschreiben, dass er zwei Interrupts erkennt und unterschiedlich je nach dem welcher Interrupt betätigt wird reagiert?

    • @AEQWEB
      @AEQWEB  3 роки тому

      Ja das geht. Pin 2 & 3 unterstützen Interrupts.

  • @andreglomm9843
    @andreglomm9843 9 місяців тому

    Schönes Video

  • @hokazshinitzu9042
    @hokazshinitzu9042 3 роки тому

    Nice danke