PCINTx und INTx

OP #954880
Hallo

Wo ist der Unterschied zwischen PCINTx und INTx ?
Der Attiny13 hat z.B. nur einen INT0 aber an allen I/O Pins PCINT's. 
Bedeutet das, dass ich den einen externen Interrupt von allen I/O Pins 
auslösen kann (quasi Pin Change INTx) oder bedeutet das, dass ich 6 
externe Interrupts auslösen kann.
Zweites kann ich mir nicht vorstellen da es ja nur einen INT0_vect gibt.
Komisch aber ist trotzdem das bei Atmel in der Liste wo alle 
Mikrocontroller aufgeführt sind mit all ihren Eigenschaften steht, dass 
der Attiny13
6 External Interrupts hat

Vielen Dank im vorraus für die Antworten.

Gruss mcl024
#954924
Es gibt im Prinzip zwei gravierende Unteschiede: Die Pin Change 
Interrupts reagieren zunächst mal grundsätzlich auf alle Pegelwechsel, 
während die "eigentlichen" externen Interrupts (INT0, INT1 usw.) 
konfigurierbar sind (steigende, fallende Flanke, beide Flanken oder 
Low-Pegel). Außerdem sind die Pins für die Pin Change Interrupts in 
Gruppen zusammengefasst (die i.d.R. den I/O-Ports entsprechen), wobei 
alle aktivierten Pins einer Gruppe ein und dasselbe Interrupt-Flag 
auslösen, und damit auch den µC in den selben Interrupt-Vektor springen 
lassen. Bei den externen Interrupts hingegen ist immer nur ein Pin 
einem Interrupt-Vektor zugeordnet.

ATMEL zählt offensichtlich bei den Angaben nicht die Interrupt-Vektoren, 
sondern die I/O-Pins, die einen Interrupt auslösen können, was in meinen 
Augen ein wenig irreführend ist.
OP #954929
Ok schonmal schönen Dank für die Antwort.

Wenn ich jetzt aber mehere Taster auswerten möchte, aber dieses muss 
absolut Zeitunabhängig passieren. Also nicht mit einem Timer Interrupt 
und dann die Pins abfragen. Dann kann ich doch nur die INTx nehmen 
oder??
#955002
Hallo,

du könntest die Tasten auch an die PCINTx anschliessen, du musst dich 
nur um die Auswertung selber kümmern welche Taste jetzt eigentlich 
gedrückt wurde. Dazu musst du den letzten Zustand sichern um 
festzustellen welcher Eingang sich geändert hat. Allerdings muss man 
auch sagen das die PCINTx sich nicht für Tasten eignen, weil die sehr 
stark prellen können und so die Auswertung schwer machen. Ideal sind die 
PCINTx allerdings wenn man z.B. Grayencoder anschliessen will, da sich 
immer nur eine Stelle ändert im gegensatz zum Binärcode.

CA Dirk

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 18 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

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.