r1upper/User/module/shoot.hpp
2025-04-12 15:18:06 +08:00

39 lines
756 B
C++

#ifndef SHOOT_HPP
#define SHOOT_HPP
#include "djiMotor.h"
// 定义状态枚举
typedef enum {
SHOOT_IDLE, // 空闲状态
SHOOT_FIRE, // 发射状态
SHOOT_TRIGGERED, // 光电触发状态
SHOOT_RETURN // 自动返回状态
} ShootState_t;
// 光电传感器读取宏
#define IS_PHOTOELECTRIC_TRIGGERED() (HAL_GPIO_ReadPin(STOP_GPIO_Port, STOP_Pin) == GPIO_PIN_RESET)
class Shoot
{
public:
Shoot();
void shootThree(void);
void shootStop(void);
void shootBack(void);
void shootControl(void);
void shootStateMachine(void);
float speed_5065;
private:
float accelLeft;
float accelRight;
float accelZero;
uint8_t flagRightShoot;
uint8_t flagLeftShoot;
};
#endif