feat: 完成弹力魔盒初版固件

This commit is contained in:
2026-08-31 20:15:19 +08:00
parent 026d6d5da7
commit b63a928b92
34 changed files with 1320 additions and 781 deletions
+11 -15
View File
@@ -1,6 +1,6 @@
/******************************************************************************
* @file bsp_hw.h
* @brief CBC2 板级硬件:电机 / LED / 按键 / 充电 / 电量
* @brief CBC1 板级硬件:电机 / 震动 / LED / 按键 / 充电 / 电量
* @author cyWu <1917507415@qq.com>
* @date 2026.08.25
* @version V1.6.0
@@ -27,9 +27,9 @@ typedef enum {
} BspHw_Ret_t;
typedef enum {
BSP_MOTOR_STOP = 0, /**< 滑行停(INA/INB 都低) */
BSP_MOTOR_IN, /**< 收绳(顺时针,见 BOARD_MOTOR_IN_INA_HIGH */
BSP_MOTOR_OUT /**< 放绳 */
BSP_MOTOR_BACKWARD = -1,
BSP_MOTOR_STOP = 0,
BSP_MOTOR_FORWARD = 1
} BspMotorDir_t;
/**
@@ -70,24 +70,20 @@ void bsp_led_all_off(void);
* @param dir 收绳 / 放绳 / 停转
* @return 无
*/
void bsp_motor_set(BspMotorDir_t dir);
void bsp_drive_set(BspMotorDir_t left_dir, uint16_t left_duty,
BspMotorDir_t right_dir, uint16_t right_duty);
/** 停止左右轮,四路 PWM 全部清零。 */
void bsp_drive_stop(void);
/**
* @brief 设置电机方向与 PWM 占空比
* @param dir 收绳 / 放绳 / 停转
* @param duty 占空比 0~100000%~100%);STOP 时忽略
* @return 无
*/
void bsp_motor_set_pwm(BspMotorDir_t dir, uint16_t duty);
/**
* @brief 推进换向死区计时,按真实毫秒计时;死区结束后切到目标方向/占空比
* @brief 兼容旧调用;猫猫捕猎罩每个动作更新左轮对应的两路 PWM
* @return 无
*/
void bsp_motor_switch_tick(void);
/**
* @brief 电机是否还在转或处于换向死区
* @brief 电机是否还在转
* @return 1=忙碌,0=已停且 PWM 已关
*/
uint8_t bsp_motor_is_busy(void);