STM8 EXTI Service Routine

Gast #3314716
Lesenswert?

Hallo,

Ich habe am Port B des STM8S105K6 fünf externe Interrupts.

Von anderen Controllern kenne ich es so, dass ich für jeden dieser 
Interrupts ein eigene Interrupt Service Routine schreibe. Beim STM8 aber 
gibt es eine ISR für den gesamten Port und nicht für jedes einzelne 
Portpin.

Wenn diese Routine also aufgerufen wird muss ich erstmal feststellen 
welcher Interrupt ausgelöst hat. Port B1 oder B3 oder B6 oder ...?

Gibt es dazu eine saubere Lösung? Ich habe noch nichts dazu gefunden und 
mir selbst eine Lösung einfallen lassen indem ich die Zustände aller 
Portpins einlese und mit denen vom letzten Aufruf der Routine 
vergleiche. Funktioniert zwar aber ist meiner Meinung nach nicht 
wirklich elegant und es bläht meine ISR nur unnötig auf.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren