Hallo,
ich habe folgendes Problem:
Ich möchte den cc430f5137 in verschiedenen Low Power Modi betreiben. Das
Ganze soll in etwa so aussehen:
Ich habe einen einfachen Round-Robin Scheduler, der von timer1a3 (smclk)
getaktet (ca. 1ms) wird und zyklisch Tasks abarbeitet. Zusätzlich habe
ich einen Rtc Alarm Interrupt (Rtc wird von Aclk getaktet). Der
Controller soll im lpm3 verweilen bis der Rtc Alarm auftritt. Da im LPM3
SMCLK abgeschaltet ist, arbeitet der Scheduler nun nicht. Danach wird
(vom Scheduler) eine Statemachine angeschmissen, die (zyklisch) div.
States abarbeitet. Wenn der Scheduler nichts zu tun hat, schickt er den
Controller in LPM0. Nach dem letzten State der Statemachine geht der
Controller wieder in LPM3 (und schaltet damit implizit den Scheduler ab.
Nun zu meinem eigentlichen problem:
die ISR der timer (t1a3 & rtc) rufen lediglich callback funktionen im
Scheduler, bzw. in meiner Applikation auf. ich weis auch nur dort, ob
ich den jeweiligen LPM verlassen muss, oder nicht.
funktioniert jedoch lediglich im ISR context. Wie kann ich einen LPM
state ausserhalb einer ISR verlassen?
Gruß & Dank,
Thomas