diff options
author | danicampora <danicampora@gmail.com> | 2015-03-04 13:52:39 +0100 |
---|---|---|
committer | danicampora <danicampora@gmail.com> | 2015-03-11 17:00:33 +0100 |
commit | 9e44383e3f4092940a1e1b49a278978df99f7b08 (patch) | |
tree | 606ad67566b41bb037bd02e678891dfb69db6c70 /cc3200/mods/pybsleep.h | |
parent | 73aee8da54f847341d0fd9718d05ca964654a6dd (diff) | |
download | micropython-9e44383e3f4092940a1e1b49a278978df99f7b08.tar.gz micropython-9e44383e3f4092940a1e1b49a278978df99f7b08.zip |
cc3200: Add power management framework. Add mpcallback class.
Supports suspend and hibernate modes. Waking is possible throug GPIO
and WLAN.
The mpcallback class is generic and can be reused by other classes.
Diffstat (limited to 'cc3200/mods/pybsleep.h')
-rw-r--r-- | cc3200/mods/pybsleep.h | 28 |
1 files changed, 24 insertions, 4 deletions
diff --git a/cc3200/mods/pybsleep.h b/cc3200/mods/pybsleep.h index d91437ffa2..97997080d8 100644 --- a/cc3200/mods/pybsleep.h +++ b/cc3200/mods/pybsleep.h @@ -27,11 +27,31 @@ #ifndef PYBSLEEP_H_ #define PYBSLEEP_H_ -typedef void (*WakeUpCB_t)(mp_obj_t self); +/****************************************************************************** + DEFINE CONSTANTS + ******************************************************************************/ +#define PYB_PWR_MODE_ACTIVE_IDLE (0x00) +#define PYB_PWR_MODE_LPDS (0x01) +#define PYB_PWR_MODE_HIBERNATE (0x02) +/****************************************************************************** + DEFINE TYPES + ******************************************************************************/ +typedef void (*WakeUpCB_t)(const mp_obj_t self); + +/****************************************************************************** + DECLARE EXPORTED VARIABLES + ******************************************************************************/ +extern const mp_obj_base_t pyb_sleep_obj; + +/****************************************************************************** + DECLARE FUNCTIONS + ******************************************************************************/ void pyblsleep_init0 (void); -void pybsleep_add (mp_obj_t obj, WakeUpCB_t wakeup); -void pybsleep_remove (mp_obj_t obj); -void pybsleep_wakeup (void); +void pybsleep_add (const mp_obj_t obj, WakeUpCB_t wakeup); +void pybsleep_remove (const mp_obj_t obj); +void pybsleep_set_wlan_wake_callback (mp_obj_t cb_obj); +void pybsleep_set_gpio_wake_callback (mp_obj_t cb_obj); +void pybsleep_set_timer_wake_callback (mp_obj_t cb_obj); #endif /* PYBSLEEP_H_ */ |