#ifndef HT04_H #define HT04_H #include "struct_typedef.h" #include "bsp_can.h" #include "controller.h" #define HT_MOTOR_CNT 4 #define P_MIN -95.5f // Radians #define P_MAX 95.5f #define V_MIN -45.0f // Rad/s #define V_MAX 45.0f #define T_MIN -18.0f #define T_MAX 18.0f typedef struct //HT04 { float last_ecd; float ecd; float speed_rpm; float given_current; PID_t pid; can_instance* motor_can_instace; } joint_instance; typedef enum { CMD_MOTOR_MODE = 0xfc, CMD_RESET_MODE = 0xfd, CMD_ZERO_POSITION = 0xfe } joint_mode; joint_instance* HTMotorInit(can_instance_config config); void JointControl(joint_instance* _instance,float current); void SetJointMode(joint_mode cmd,joint_instance* _instance); #endif // !HT04_H#define HT04_H