func_lowpwr.h 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. #ifndef __FUNC_LOWPWR_H
  2. #define __FUNC_LOWPWR_H
  3. #define pwroff_do() lowpwr_pwroff_mode1_do()
  4. #if SYS_OFF_TIME
  5. #define lowpwr_pwroff_auto_en() if(sys_cb.pwroff_delay == -1L) {sys_cb.pwroff_delay = sys_cb.pwroff_time;}
  6. #define lowpwr_pwroff_auto_dis() sys_cb.pwroff_delay = -1L;
  7. #define lowpwr_pwroff_delay_reset() if(sys_cb.pwroff_delay != -1L) {sys_cb.pwroff_delay = sys_cb.pwroff_time;}
  8. #else
  9. #define lowpwr_pwroff_auto_en()
  10. #define lowpwr_pwroff_auto_dis()
  11. #define lowpwr_pwroff_delay_reset()
  12. #endif
  13. #if SYS_SLEEP_LEVEL
  14. #define lowpwr_sleep_delay_reset() if(sys_cb.sleep_delay != -1L) {sys_cb.sleep_delay = sys_cb.sleep_time;}
  15. #define lowpwr_sleep_auto_en() if(sys_cb.sleep_delay == -1L) {sys_cb.sleep_delay = sys_cb.sleep_time;}
  16. #define lowpwr_sleep_auto_dis() sys_cb.sleep_delay = -1L;
  17. #else
  18. #define lowpwr_sleep_delay_reset()
  19. #define lowpwr_sleep_auto_en()
  20. #define lowpwr_sleep_auto_dis()
  21. #endif
  22. typedef bool (*is_sleep_func)(void);
  23. bool sleep_process(is_sleep_func is_sleep);
  24. void lowpwr_tout_ticks(void);
  25. void func_pwroff(void);
  26. #endif // __FUNC_LOWPWR_H