Patrick E. schrieb:
> Nach meinem Verständnis, sollte doch der Controller wenn er in einer ISR
> ist keine anderen Interrupts erlauben, bzw diese auf die "wartebank"
> schieben.
Kommt drauf an, was genau du mit 'auf die Wartebank schieben' meinst.
Auch wenn Interrupts gesperrt sind, wird die Interrupt Anforderung
trotzdem registriert. Wenn dann Interrupts wieder freigegeben sind,
kommt diese registrierte Anforderung zum Zug und die entsprechende
Interrupt Behandlung läuft an.
Ist ja auch logisch: Nur weil gerade eine ISR läuft, darf ja trotzdem
die Warnung vom Badwannenüberlauf nicht verloren gehen, die an einen
Interrupt geschaltet wurde.
> Das Problem in meinem Quellcode ist, dass wenn ich in der ISR bin, und
> noch die 5 Sekunden Delay
5 Sekunden Delay sind sowieso nicht tragbar.
Im Grunde ist die ganze Delay-Programmierung ab einem gewissen Zeitpunkt
in der Softwerker-Kariere nicht tragbar. Am Anfang ok. Aber irgendwann
ist der Zeitpunkt erreicht, an dem man sagen muss: Delay ist nicht die
Lösung - Delay ist das Prfoblem.
Und dann müssen andere Techniken ran.
> Wie kann ich das Problem lösen ?
Entprellung
mein persönlicher Favorit: die Danegger Entprellung.