Hallo Gemeinde,
ich habe folgendes Problem:
Am PortB möchte ich die Pins PB2 und PB3 als externe Interrupts INT0
verwenden.
Wie die Konfiguration funktioniert ist schon klar.
Das Ganze geht auch bei einem Pin als Interrupt-Quelle wunderbar.
Wie aber kann ich bei zwei Quellen an einem PORT in der ISR die
auslösende Quelle bestimmen?:
ISR(PORTB_INT0_vect)
{
if(PINPB2 ist Quelle)
{
//mache was
}
if(PINPB3 ist Quelle)
{
//mache was
}
}
Alle Beispiele im WEB und auch hier im Forum nehmen nur einen Pin als
externe Interrupt-Quelle.
Im Manual bzw. Summary für den XMega finde ich auch keinen brauchbaren
Hinweis. Vielleicht geht es aber auch nicht.
Gruß
Karsten
du müsstest die pins als input-pin abfragen und dadurch auswerten können. Es geht aber auch so:
1 | if(sec==36){PCINT28_start();}//d4-q1 |
2 | if(sec==37){PCINT28_stop();} |
3 | |
4 | if(sec==38){PCINT29_start();}//d5-q2 |
5 | if(sec==39){PCINT29_stop();} |
Auswertung jeweils bei stop
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.