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 11 #ifndef __LPTIMER_H__ 12 #define __LPTIMER_H__ 13 14 #include <rtthread.h> 15 16 struct rt_lptimer 17 { 18 struct rt_timer timer; 19 rt_list_t list; 20 }; 21 typedef struct rt_lptimer *rt_lptimer_t; 22 23 void rt_lptimer_init(rt_lptimer_t timer, 24 const char *name, 25 void (*timeout)(void *parameter), 26 void *parameter, 27 rt_tick_t time, 28 rt_uint8_t flag); 29 30 rt_err_t rt_lptimer_detach(rt_lptimer_t timer); 31 rt_err_t rt_lptimer_start(rt_lptimer_t timer); 32 rt_err_t rt_lptimer_stop(rt_lptimer_t timer); 33 34 rt_err_t rt_lptimer_control(rt_lptimer_t timer, int cmd, void *arg); 35 36 rt_tick_t rt_lptimer_next_timeout_tick(void); 37 38 #endif 39