INT0 zieht pin auf High

Gast #4504656
Lesenswert?
• ▲
▼
Hallöchen zusammen,

ich möchte bei einem AtMega328 einen externen Interrupt bei steigender 
Flanke auslösen.
Das Signal kommt von einem Operationsverstärker. Dessen Ausgang führt 
direkt auf den Interrupt Pin (PD2).

Mein Problem ist nun, dass wenn die Flanke kam der Pin PD2 nicht mehr 
direkt auf LOW zurückfällt, bzw. erst nach einiger Zeit.
Wenn ich mit dem Oszi messe, sieht man das wenn ich die Leitung von uC 
trenne, dass Signal sich verhält wie es soll, nur am uC angeschlossen 
eben nicht.

Hier die Initialisierung:
void EnableExternInterrupt0(){
  EIMSK |= (1<<INT0);  // External Interrupt Request 0 enable
  EICRA |= (1<<ISC01) | (1<<ISC00);// The rising edge of INT0 generates 
an interrupt request.
}

Hat jemand ne Idee?
Gruß Tobi
Gast #4504665
Lesenswert?
• ▲
▼
Das ist ja klar. Das ist ein CMOS IC. Dessen Eingänge wirken wie 
Kondensatoren. Wenn du da mal kurz Spannung drauf legst und dann die 
Leitung trennst, dann bliebt der Kondensator noch lange geladen. Und 
irgendwann wirst du eine zufälligen Pegel haben, weil

a) Die Spannung im illegalen Bereich zwischen 1V und 3V liegt, oder
b) Der Eingang Radiowellen empfängt, denn er ist sehr hochohmig.

Beschäftige dich mal mit pull-up und pull-down Widerständen, damit 
kannst du dein Problem vermutlich lösen.
Gast #4504686
Lesenswert?
• ▲
▼
Ah, das klingt schon mal einleuchtend.

Kompletten Schaltplan gibts nicht nicht. Existiert gerade nur auf dem 
Steckbrett aber so wie auf dem Bild ist das ganze verschaltet. OP ist 
mit 5V und GND verbunden.

Initialisierung ist wie im ersten Post und zusätzlich noch:
DDRD = 0;
PORTD &= ~(1<<PD2); // Pull Up an PD2 = INT0 aktivieren

Vielen Dank schonmal
Angehängte Dateien:
Gast #4504688
Lesenswert?
• ▲
▼
Stefan U. schrieb:
> Das ist ja klar. Das ist ein CMOS IC. Dessen Eingänge wirken wie
> Kondensatoren. Wenn du da mal kurz Spannung drauf legst und dann die
> Leitung trennst, dann bliebt der Kondensator noch lange geladen. Und
> irgendwann wirst du eine zufälligen Pegel haben, weil

Sowas habe ich auch schon gedacht und einen Pull Down Widerstand (10k) 
an die Leitung gehängt. Hat aber nichts geändert.

Oder verstehe ich was falsch?
Gast #4504706
Lesenswert?
• ▲
▼
LM358 und µC werden beide aus den selben 5V-Supply versorgt?

Tobi schrieb:
> Mein Problem ist nun, dass wenn die Flanke kam der Pin PD2 nicht mehr
> direkt auf LOW zurückfällt, bzw. erst nach einiger Zeit.
> Wenn ich mit dem Oszi messe, sieht man das wenn ich die Leitung von uC
> trenne, dass Signal sich verhält wie es soll, nur am uC angeschlossen
> eben nicht.

kannst du die Oszi-Messungen mal zeigen?
(Firma: matzetronics) #4504707
Lesenswert?
• ▲
▼
Tobi schrieb:
> PORTD &= ~(1<<PD2); // Pull Up an PD2 = INT0 aktivieren

Die Programmzeile macht allerdings das genaue Gegenteil des Kommentars - 
sie schaltet den Pullup aus.
Der Opamp ist als Komparator keine gute Wahl. Er ist, wie ich oben schon 
vermutete, völlig übersteuert (du hast ihn ja auf theoretisch unendliche 
Verstärkung geschaltet) und deswegen braucht er recht viel 
Erholungszeit. Wenn du ihn durch einen LM393 (der ist pinkompatibel) 
Komparator ersetzt, dann sollte das recht gut klappen. Der LM393 braucht 
allerdings zwingend einen Pullup, den du entweder im AVR aktivieren 
solltest oder besser, mit einem externen Widerstand machst.
Gast #4504735
Lesenswert?
• ▲
▼
Oh man...
Matthias. Danke!
Das wars :) Hatte mir sogar extra nen 393er besorgt. Dachte aber, dass 
dieser kaputt wäre (Pullup Widerstand?? Datenblatt?????) und hab deshalb 
den Op benutzt.

Naja zumindest was über OPs gelernt ;)

Vielen Dank an alle!

Grüße

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.