ungewolltes auslösen von Interrupts

Gast #4436440
Lesenswert?
• ▲
▼
Hallo,
ich nutze einen Arduino um externe interrupts zu erfassen. Sobal eine 
Pegeländerung an einem Input pin stattfidet soll ein Interrupt generiert 
werden. Diese triggern auf einen Flankenwechsel. Das funktioniert soweit 
auch ganz gut. Jetzt habe ich das ganze mal über mehrere Stunden laufen 
lassen und an die Inputs offene Leitungen gehangen. Und es wurden 
mehrere Interrupts im laufe der Zeit ausgelöst, obwohl dies nicht sein 
sollte. Meine Frage ist, woran könnte es liegen? Die INputs sind mit 
einem internen Pullup Widerstand versehen.
Ist es möglich, das über die Leitungen solche Störungen eingefangen 
werden, die als Schaltschwelle ausreichen?
Moderator (Firma: Titel) Persönliche Seite #4436449
Lesenswert?
• ▲
▼
Tim schrieb:
> Die INputs sind mit einem internen Pullup Widerstand versehen. Ist es
> möglich, das über die Leitungen solche Störungen eingefangen werden, die
> als Schaltschwelle ausreichen?
Ja, das ist es.
Wenn du an so einen Pin eine (lange) Leitung anschleißen willst, dann 
schalte 1. einen niederohmigen Pullup (max 1kOhm) aussen dazu und 2. 
zusätzlich einen 100nF vom Pin nach GND. Dann dürfte (erst mal) Ruhe 
sein.
Moderator (Firma: Titel) Persönliche Seite #4436521
Lesenswert?
• ▲
▼
Felix Adam schrieb:
> Wobei 100nF das Signal doch schon krass verzögern.
Welches Signal?

> 100pF wären besser, da insbesondere HF gefiltert werden sollte, oder?
100pF sind witzlos. Das hat ja schon das Kabel.

Peter D. schrieb:
> Tasten ... externe Interrupts eh der schlechteste und umständlichste Weg.
Nicht nur dafür, sondern auch für "ganz normale" nicht prellende 
Sensorsignale. Oder andersrum: wer in seinem Programm für 8 Eingänge 8 
externe Interrupts braucht, hat einen Fehler in der Struktur.
Gast #4436532
Lesenswert?
• ▲
▼
tau = 1k * 100nF = 100µs. Finde ich schon eine recht große Verzögerung. 
Wobei das natürlich nur eine Abschätzung ist, da es von der 
High-/Low-Erkennungsschwelle des µC abhängt.

Und natürlich von der Anwendung. Aber dazu steht nichts im Eingangspost. 
Daher würde ich von "krass langsam" sprechen, um auf der sicheren Seite 
zu sein, falls der TE hier was flinkes anschließen will.
Gast #4436540
Lesenswert?
• ▲
▼
Ich danke euch für eure Antworten. Mir war es vor allem wichtig zu 
wissen, das hier wirklich über die Leitungen Störsignale eingefangen 
werden. In den nächsten Tagen kommt an diese Inputs nämlich noch eine 
Beschaltung, die den tollen nebeneffekt haben dürfte das solche 
Störungen ausgefiltert werden
Moderator (Firma: Titel) Persönliche Seite #4436769
Lesenswert?
• ▲
▼
Felix Adam schrieb:
> Finde ich schon eine recht große Verzögerung
Wofür?
Für einen Temperaturschalter ist das z.B. komplett irrelevant.

> Aber dazu steht nichts im Eingangspost.
Exakt. Dort steht nur, dass eine "offene Leitung" angeschlossen ist und 
Probleme macht. Das ist das Problem und das soll gelöst werden. Mit den 
100nF zusammen mit dem 1kOhm Widerstand macht eine offene Leitung sicher 
keine unnötigen Zappler mehr. Problem gelöst.

> tau = 1k * 100nF = 100µs.
So darfst du nicht rechnen. Du kennst die Impedanz der Quelle nicht...

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.