#ifndef _INITIAL_H #define _INITIAL_H #ifdef __cplusplus extern "C" { #endif #include "config.h" #include "gd32c10x_eval.h" #include "stdint.h" #include // 任务标志定义 typedef enum { TASK_MOTOR_CONTROL = 0, TASK_CURRENT_UPDATE, TASK_VELOCITY_UPDATE, TASK_ANGLE_UPDATE, TASK_MCU_TEMP_UPDATE, TASK_DRV_TEMP_UPDATE, TASK_VBUS_UPDATE, TASK_THERMAL_CONTROL, TASK_CAN_TRANSMIT, TASK_MAGNETIC_CHECK, TASK_COUNT } SystemTask; void rcu_config(void); static volatile uint32_t timer_delay_count = 0; // volatile 很重要! int fputc(int ch, FILE *f); // 声明fputc函数以重载标准库实现 u8 USART0_init(void); u8 watchdog_init(u32 time); u16 get_reset_cause(void); void unused_pin_init(); void OTA_initial(void); // 任务管理结构 typedef struct { volatile u32 taskFlags; // 任务标志位(每个位代表一个任务) } TaskScheduler; #ifdef __cplusplus } #endif #endif