www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik AVR mit mehr als 2 ext Interrupts


Autor: Maik (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi!

Gibt es eigentlich einen AVR mit mehr als 2 externen Interrupts.
Bräuchte für ein Projekt einen mit 6 Interrupt Eingängen.

Danke

Autor: johnny.m (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ATMega16 (3), ATMega64 (8)

Autor: Thomas (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
http://www.atmel.com/dyn/products/param_table.asp?...


z.B. Mega 48 und 88 haben Pin-Change Interrupt für alle I/O.

Autor: johnny.m (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Was willste mit den 6 Interrupts denn machen? In vielen Fällen kann man
mit ein paar Tricks auch mit weniger Interrupts auskommen.

Autor: Gerd (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Maik,

ich habs für Dich rausgesucht.

hier kannst selber schauen:
http://www.atmel.com/dyn/products/param_table.asp?...

Nächste Auskunft wäre dann kostenpflichtig sfg

Gruss

Gerd

Autor: Maik (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Na super...und ich such hier 3 Tage nach der Tabelle bei ATMEL...Danke

Also diese PIN Change Interrupts sind zwar ganz nett aber wenn einer
von den Pins ein Interrupt auslöst weiß man doch gar nicht welcher
oder?! Da steht doch nicht jeder in der Vector Tabelle...dann kann man
ja auch gleich alle durch pollen oder?!

Autor: Rahul (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ja

Autor: Maik (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Dann stellt sich mir die Frage: Wozu braucht man die Dinger
überhaupt?????

Autor: Rahul (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wozu brauchst du denn die 6 Interrupts? Etwa für Tasten?
Man kann in der ISR zum Pinchange-Interrupt den Portzustand in einer
Variablen zwischen speichern, ein Flag setzen, und dann in der Main
sich um die Auswertung kümmern. Anders würde ich es nicht machen.

Autor: Hannes Lux (hannes)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Also diese PIN Change Interrupts sind zwar ganz nett aber wenn
> einer
> von den Pins ein Interrupt auslöst weiß man doch gar nicht welcher
> oder?! Da steht doch nicht jeder in der Vector Tabelle...dann kann
> man
> ja auch gleich alle durch pollen oder?!

Naja, wenn man sich den Stand vom letzten mal merkt, dann reichen ein
paar logische Verknüpfungen.

Hoffentlich willst du damit aber keine mechanisch erzeugte Signale
(z.B. Taster, Endschalter) verarbeiten, das geht auf diese Art nämlich
schief.

Aber wie schon erwähnt, schreib wozu das gut sein soll, dann findet
sich auch eine Lösung.

...

Autor: Rahul (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
"Dann stellt sich mir die Frage: Wozu braucht man die Dinger
überhaupt?????"
Man hat mehrere Ereignisse/Sensoren (z.B. Lichtschranken), die man
nicht konstant pollen will/kann, weil der Controller wichtigere Sachen
zu tun hat (z.B.Anzeigentafel).
Sprich man könnte ein Rennen über mehrere Bahnen machen (z.B.Slotracer,
Bundesjugendwettspiele-Sprint), wo die Zeitmessung gleichzeitig
gestartet wird.
Wenn man bei jedem Pinchange-Interrupt nun die Zeit und den Portzustand
speichert, kann man es halt anders auswerten.
Irgendwas wird sich Atmel schon dabei gedacht haben... Such einfach mal
zwischen den ApplicationNotes.

Autor: Maik (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Also es geht darum Widerstandsspitzen zu messen die bei einer Dauer von
1us bis 1s liegen. Von einem Komparator kommt entweder ne 0 oder ne 1.
Bisher haben wir die 6 Eingänge immer abgefragt ob sich was geändert
hat. Mit den Interrupts wäre das sicherlich einfacher und für den MC
auch etwas entlastender da der ja auch noch andere Dinge tun soll...
der Atmega64 erfüllt ja die Anforderungen von daher is ja jetzt alles
okay...

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.