#ifndef TASK_H
#define TASK_H
-
-#define MAXTASKS 5
-#define MAXTASKSIZE 1024
+#ifdef __cplusplus
+extern "C" {
+#endif
#include <stdint.h>
#include <stdbool.h>
struct task {
- uint8_t bc[MAXTASKSIZE];
- uint16_t tlen;
+ uint16_t tasklength;
uint16_t interval;
- long lastrun;
- bool used;
+ unsigned long lastrun;
+ uint8_t taskid;
+ struct task *next;
+ uint8_t *bc;
};
+bool is_interrupt_task(struct task* t);
+bool had_interrupt(struct task* t);
+
+struct task *task_head(void);
+struct task *task_next(struct task *t);
void task_init(void);
void task_register(void);
void task_delete(void);
-struct task *task_get(int num);
+#ifdef __cplusplus
+}
+#endif
#endif