8#ifndef __BASE_SOFT_TIMER_H
9#define __BASE_SOFT_TIMER_H
void(* soft_timer_handler_t)(void *timer_obj, int instance, void *p)
Definition base_soft_timer.h:23
void(* soft_timer_finish_handler_t)(int instance)
Definition base_soft_timer.h:22
void(* soft_timer_event_handler_t)(void *soft_timer_obj, int instance, void *p)
Definition base_soft_timer.h:21
void soft_timer_tick_exec(soft_timer_class_struct *soft_timer_obj)
Функция тика soft_timer. Эту функцию нужно вызывать в прерывании таймера (или SysTick()) для работы s...
Definition base_soft_timer.c:168
bool stop_soft_timer(soft_timer_class_struct *soft_timer_obj, int instance)
Функция остановки soft_timerа
Definition base_soft_timer.c:117
bool remove_soft_timer(soft_timer_class_struct *soft_timer_obj, int instance)
Функция удаления soft_timerа
Definition base_soft_timer.c:105
bool soft_timer_is_run(soft_timer_class_struct *soft_timer_obj, int instance)
Функция получения статуса soft_timerа.
Definition base_soft_timer.c:160
int create_soft_timer(soft_timer_class_struct *soft_timer_obj, soft_timer_handler_t handler, void *p, bool repeat, bool delete_on_completion, soft_timer_mode_enum handler_exec_mode)
Функция создания нового soft_timerа
Definition base_soft_timer.c:60
soft_timer_mode_enum
enum режимов исполнения soft_timer
Definition base_soft_timer.h:122
bool start_soft_timer(soft_timer_class_struct *soft_timer_obj, int instance, uint32_t time_ms)
Функция запуска soft_timerа
Definition base_soft_timer.c:130
void soft_timer_init(soft_timer_init_struct *init_struct, soft_timer_class_struct **soft_timer_obj)
Функция инициализции soft_timer.
Definition base_soft_timer.c:30
void timer_owerflow(soft_timer_class_struct *soft_timer_obj)
Функция переполнения таймера.
Definition base_soft_timer.c:50
@ SOFT_TIMER_EXEC_WHILE_MODE
Definition base_soft_timer.h:124
@ SOFT_TIMER_EXEC_IRQ_MODE
Definition base_soft_timer.h:125
Верхнеуровневая структура soft_timer, с которой предстоит работать.
Definition base_soft_timer.h:169
uint8_t soft_timer_count
Definition base_soft_timer.h:170
soft_timer_init_struct * init_struct
Definition base_soft_timer.h:172
soft_timer_handler_struct * soft_timer_buffer
Definition base_soft_timer.h:171
Внутренняя структура soft_timer.
Definition base_soft_timer.h:151
uint8_t delete_on_completion
Definition base_soft_timer.h:160
void * p
Definition base_soft_timer.h:156
uint8_t repeat
Definition base_soft_timer.h:158
uint8_t mode
Definition base_soft_timer.h:157
uint8_t overflow
Definition base_soft_timer.h:159
int instance
Definition base_soft_timer.h:152
uint32_t start_time_ms
Definition base_soft_timer.h:154
uint16_t time_ms
Definition base_soft_timer.h:155
uint8_t run
Definition base_soft_timer.h:161
soft_timer_event_handler_t handler
Definition base_soft_timer.h:153
Структура для инициализации soft_timer.
Definition base_soft_timer.h:134
uint8_t(* isTimerEnable)(void)
Definition base_soft_timer.h:142
void(* StopTickTimer)(void)
Definition base_soft_timer.h:141
uint32_t(* GetTick)(void)
Definition base_soft_timer.h:138
void(* StartTickTimer)(void)
Definition base_soft_timer.h:140
uint32_t tick_step_us
Definition base_soft_timer.h:137
uint8_t timers_size
Definition base_soft_timer.h:136