Gast
#1797723
Hallo zusammen, ich habe ein keleines Problem mit Interrupts. Also, von der Uni aus, arbeiten wir grad mit dem Asuro in Assembler. Jetzt ist die Aufgabe, in einer ISR (INT1) einen SLEEP Modus zu aktivieren (Idle), aus dem der µC durch ein Timer Overflow Interrupt wieder aufgeweckt werden soll, aber das Ganze halt wie gesagt innerhalb der ersten ISR (INT1). (Wozu das gut sein soll ist mir auch ein Rätsel, aber die wollen das so...) Problem ist, wenn ich jetz in der INT1 ISR die externen Interrupts deaktiviere um dann mit SEI alle anderen Interrupts wieder global zu aktivieren, damit der Timer Overflow Interrupt den µC wieder wecken kann, funktioniert von Anfang an gar kein Interrupt mehr. Also Programm geflasht, Kiste angeschmissen und er reagiert auf gar keinen Interrupt mehr, er kommt noch nciht mal zu dem Punkt wo ich das SEI in der ISR stehen hab. Sobald ich das SEI aus der ISR wieder rausnehme funktionieren danach alle Interrupts wieder. Hab schon im Datenblatt usw. nachgeschaut, aber bin da nicht wirklich schlau geworden. Wäre super wenn mir da jemand den entscheidenen Tip geben könnte :) danke schon mal... und LG, Sven T.