SyterKit 0.4.0.x
SyterKit is a bare-metal framework
Loading...
Searching...
No Matches
os.h
Go to the documentation of this file.
1/* SPDX-License-Identifier: GPL-2.0+ */
2
3#ifndef __OS_H__
4#define __OS_H__
5
6#include <stdbool.h>
7#include <stddef.h>
8#include <stdint.h>
9#include <types.h>
10
11#include <timer.h>
12
13#define TIMER_ALWAYS_RUN 0xFFFFFFFF
14
24
29
36void timer_create(timer_t *timer, void (*callback)(void *arg, uint32_t event), void *arg);
37
38
45void timer_start(timer_t *timer, uint32_t max_run_count, uint32_t interval);
46
50void timer_handle();
51
52#endif// __OS_H__
u32_t uint32_t
Definition stdint.h:13
struct timer_struct timer_t
struct task_struct task_t
void timer_start(timer_t *timer, uint32_t max_run_count, uint32_t interval)
Start a timer.
Definition os.c:84
void timer_handle()
Timer processing function, needs to be called continuously in the main loop to achieve normal operati...
Definition os.c:91
void timer_create(timer_t *timer, void(*callback)(void *arg, uint32_t event), void *arg)
Create a timer.
Definition os.c:75
Definition os.h:15
uint32_t max_run_count
Definition os.h:19
struct task_struct * next
Definition os.h:22
uint32_t run_count
Definition os.h:18
uint32_t interval
Definition os.h:20
void * arg
Definition os.h:17
uint32_t elapsed_time
Definition os.h:21
void(* callback)(void *arg, uint32_t event)
Definition os.h:16
Definition os.h:25
uint32_t interval
Definition os.h:27
task_t task
Definition os.h:26