// thread.h #ifndef __THREAD_H #define __THREAD_H #include #define STACK_SIZE 512 // 每个任务的栈大小(按需调整) typedef struct tcb { uint32_t *stack_ptr; // 任务栈指针 uint32_t task_id; // 任务 ID struct tcb * next; } tcb_t; void init_task(tcb_t *tcb, void (*task_entry)(void *), uint8_t *start_stack, void *arg); void start_first_task(void); void tcb_scheduler(void); #endif