7
7
#error The library is not compatible with AVR boards
8
8
#endif
9
9
10
- #ifdef ARDUINO_ARCH_ARC32
10
+ #ifdef __ARDUINO_ARC__
11
11
#include " include/arc32/defines.h"
12
12
#endif
13
13
@@ -39,9 +39,12 @@ class ArduinoLowPowerClass {
39
39
40
40
void attachInterruptWakeup (uint32_t pin, voidFuncPtr callback, uint32_t mode);
41
41
42
- #ifdef ARDUINO_ARCH_ARC32
43
- void wakeFromSleepCallback (void );
44
- #endif
42
+ #ifdef __ARDUINO_ARC__
43
+ void wakeFromSleepCallback (void );
44
+ void wakeFromDoze (void );
45
+ void detachInterruptWakeup (uint32_t pin);
46
+ uint32_t arc_restore_addr;
47
+ #endif
45
48
46
49
private:
47
50
#ifdef ARDUINO_ARCH_SAMD
@@ -50,24 +53,27 @@ class ArduinoLowPowerClass {
50
53
#define RTC_ALARM_WAKEUP 0xFF
51
54
#endif
52
55
53
- #ifdef ARDUINO_ARCH_ARC32
54
- void wakeFromDoze ();
55
- void switchToHybridOscillator ();
56
- void switchToCrystalOscillator ();
57
- void attachWakeInterruptRTC (void (*userCallBack)());
56
+ #ifdef __ARDUINO_ARC__
58
57
void turnOffUSB ();
59
- void turnOnUSB ();
60
- void setRTCCMR (int milliseconds);
61
- uint32_t readRTC_CCVR ();
62
- bool isSleeping = false ;
63
- uint32_t millisToRTCTicks (int milliseconds);
64
- void enableRTCInterrupt ();
65
- void x86_C2Request ();
66
- void (*pmCB)();
67
- #define RTC_ALARM_WAKEUP 0xFF
58
+ void turnOnUSB ();
59
+ void switchToHybridOscillator ();
60
+ void switchToCrystalOscillator ();
61
+ void setRTCCMR (int seconds);
62
+ uint32_t readRTC_CCVR ();
63
+ bool isSleeping = false ;
64
+ volatile bool dozing = false ;
65
+ uint32_t millisToRTCTicks (int milliseconds);
66
+ void enableRTCInterrupt (int seconds);
67
+ void enableAONGPIOInterrupt (int aon_gpio, int mode);
68
+ void enableAONPTimerInterrrupt (int millis);
69
+ static void resetAONPTimer ();
70
+ static void wakeFromRTC ();
71
+ void x86_C2Request ();
72
+ void x86_C2LPRequest ();
73
+ void (*pmCB)();
74
+ #define RTC_ALARM_WAKEUP 0xFF
68
75
#define RESET_BUTTON_WAKEUP 0xFE
69
76
#endif
70
-
71
77
};
72
78
73
79
extern ArduinoLowPowerClass LowPower;
0 commit comments