mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik "Übersehene" Interrupts: Mindestdauer von Interrupsignalen?


Autor: Karli (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,
ich habe aktuell das Problem, dass mein ATMega128 mit 16 Mhz hin und
wieder Interruptssignale (INT3) übersieht. Die ankommenden Interrupts
sind mal länger und mal kürzer (genaue Impulsdauer weiß ich leider
nicht, dafür brauche ich wohl mal einen Logicanalyzer).

Ich finde das nicht im Datenblatt: weiß jemand, wie oft der ATMega den
Interrupt Eingang pollt? Oder andersherum: wie lange muss ein Signal
mindestens anliegen, damit der ATMega128 dieses erkennt?

Danke
Karli

Autor: inoffizieller WM-Rahul (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Interrupt Eingang pollt?

Nie?!

Sonst würde ich die Seite 87 im Datenblatt empfehlen...

Autor: Karli (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ach noch eines, mit was für einer externen Beschaltung könnte ich denn
die Dauer eines eingehenden kurzen Interrupt-Signals "verlängern"?
Karli

Autor: inoffizieller WM-Rahul (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Naja, "nie" ist nicht ganz richtig.
Aber das erklärt der erste und zweite Absatz auf Seite 87 ziemlich
gut.

Es kommt bei flankengetriggerten Interrupts schon auf die
Taktgeschwindigkeit des Controllers an.
Nadelimpuls sind schwer zu detektieren...

Autor: T-Brox (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
mit einem Monoflop zum Beispiel, das empfindlich genug ist auf deine
kurzen Interruptsignale zu reagieren und daraus einen etwas längeren
und dann auch immer gleich langen Impuls generiert.

Autor: inoffizieller WM-Rahul (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Oder ein FliplFlop, das du dann per Controller zurücksetzt.

Autor: Marko B. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Nimm ein Monoflop.

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Der Impuls muß mindestens 1 Zyklus breit sein, d.h. 1/16MHz = 62,5ns.

Ich weiß ja nicht, wo die kürzeren Impulse herkommen, aber ich vermute
mal, Du hast einfach nen anderen Interrupt, der schneckenlahm ist und
wärend der läuft, kommt schon der 2. Impuls und geht dann natürlich
verloren.


Peter

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
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.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.