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.