lptimer.h 906 B

1234567891011121314151617181920212223242526272829303132333435363738
  1. /*
  2. * Copyright (c) 2006-2023, RT-Thread Development Team
  3. *
  4. * SPDX-License-Identifier: Apache-2.0
  5. *
  6. * Change Logs:
  7. * Date Author Notes
  8. * 2021-10-11 zhangsz the first version
  9. */
  10. #ifndef __LPTIMER_H__
  11. #define __LPTIMER_H__
  12. #include <rtthread.h>
  13. struct rt_lptimer
  14. {
  15. struct rt_timer timer;
  16. rt_list_t list;
  17. };
  18. typedef struct rt_lptimer *rt_lptimer_t;
  19. void rt_lptimer_init(rt_lptimer_t timer,
  20. const char *name,
  21. void (*timeout)(void *parameter),
  22. void *parameter,
  23. rt_tick_t time,
  24. rt_uint8_t flag);
  25. rt_err_t rt_lptimer_detach(rt_lptimer_t timer);
  26. rt_err_t rt_lptimer_start(rt_lptimer_t timer);
  27. rt_err_t rt_lptimer_stop(rt_lptimer_t timer);
  28. rt_err_t rt_lptimer_control(rt_lptimer_t timer, int cmd, void *arg);
  29. rt_tick_t rt_lptimer_next_timeout_tick(void);
  30. #endif