#ifndef __TRACK_IR_ALGO_H #define __TRACK_IR_ALGO_H #include "main.h" #include "bsp_track_ir.h" typedef struct { float yaw_correction_rpm; // 角速度修正量(用于 target_v_w) uint8_t speed_scale_percent; // 前进速度缩放(0~100) int16_t deviation; // 线偏差(负=偏左,正=偏右) track_ir_state_t state; // 当前循迹状态 } track_ir_ctrl_output_t; void track_ir_algo_init(void); void track_ir_algo_reset(void); void track_ir_algo_step(uint8_t line_mask, track_ir_ctrl_output_t *out); #endif /* __TRACK_IR_ALGO_H */