Forum: Mikrocontroller und Digitale Elektronik PCINT3 bei ATmega644 benutzen?


von Guido S. (flintstone)


Lesenswert?

Hallo liebe Gemeinde,

ich möchte bei einem ATmega644 den PCINT3 benutzen. Also meine Signale 
kommen auf Port D an. Die Signale sollen einen Interrupt auslösen, wenn 
an einem der Eingänge eine fallende Flanke auftritt.
Wie ich hier gelernt habe, habe ich erst mal danach gesucht. Leider ohne 
brauchbares Ergebnis.
Auch die Lektüre des Datenblattes brachte mich nicht weiter. Auf Seite 
60f. wird erklärt, wie man die Flanken über ISC21, ISC20 – ISC00, ISC00 
für PCINT0 bis PCINT2 einstellen kann. Völlig offen bleibt jedoch, wie 
dies für den PCINT3 einzustellen ist. Auf welche Flanke oder welches 
Potential reagiert der PCINT3? Wie kann ich die fallende Flanke 
einstellen?

Gruß
Guido

von Justus S. (jussa)


Lesenswert?

Guido Scheidat schrieb:
> Auf Seite
> 60f. wird erklärt, wie man die Flanken über ISC21, ISC20 – ISC00, ISC00
> für PCINT0 bis PCINT2 einstellen kan

Du verwechselst da wohl gerade die 'normalen' Interrupts mit den 
PinChange-Interrupts...

von Peter D. (peda)


Lesenswert?

Guido Scheidat schrieb:
> Wie kann ich die fallende Flanke
> einstellen?

Garnicht.
Pin-Change heißt, beide Flanken.
Du mußt das in Software lösen
1
neu = PIND;
2
fallend = alt & ~neu;
3
alt = neu;


Peter

von Oliver (Gast)


Lesenswert?

Guido Scheidat schrieb:
> Wie kann ich die fallende Flanke
> einstellen?

Gar nicht. Interrupt nur bei fallender (oder nur bei steigender) Flanke 
geht nur auf den "External Interrupts INT2:0".
Alle anderen reagieren immer auf jeden Flankenwechsel. Da bleibt dir 
nichts anderes übrig, als in der ISR selber auszuwerten, ob das jetzt 
eine fallende oder steigende Flanke war.

Oliver

von Guido S. (flintstone)


Lesenswert?

Ah!

Jetzt habe ich begriffen. EICRA – External Interrupt Control Register A 
bezieht sich ja auf die externen Interrupts.
Bei den Pin change Interrupts kann ich ja nie die Flanke einstellen. Ich 
kann nur die Pins maskieren.

Das hat mir sehr weiter geholfen - DANKE!

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.