From edf363ed2226ac4d8d672525b5a8ed4503d7a820 Mon Sep 17 00:00:00 2001 From: zhaohe Date: Tue, 4 Jun 2024 11:53:45 +0800 Subject: [PATCH] update mini servo protocol --- api/apibasic/cmdid.hpp | 6 ++++-- api/apibasic/errorcode.hpp | 6 ++---- api/zi_mini_servo.hpp | 5 +++-- 3 files changed, 9 insertions(+), 8 deletions(-) diff --git a/api/apibasic/cmdid.hpp b/api/apibasic/cmdid.hpp index ca1f297..23c718f 100644 --- a/api/apibasic/cmdid.hpp +++ b/api/apibasic/cmdid.hpp @@ -80,11 +80,13 @@ typedef enum { kmini_servo_read_pos = NEW_CMDID(102, 2), kmini_servo_active_cfg = NEW_CMDID(102, 3), kmini_servo_stop = NEW_CMDID(102, 4), - kmini_servo_rotate = NEW_CMDID(102, 5), - kmini_servo_move_to = NEW_CMDID(102, 6), kmini_servo_set_mid_point = NEW_CMDID(102, 7), kmini_servo_read_io_state = NEW_CMDID(102, 8), + kmini_servo_move_to = NEW_CMDID(102, 9), + kmini_servo_rotate = NEW_CMDID(102, 10), + kmini_servo_rotate_with_torque = NEW_CMDID(102, 11), + /*********************************************************************************************************************** * BOARD * ***********************************************************************************************************************/ diff --git a/api/apibasic/errorcode.hpp b/api/apibasic/errorcode.hpp index 4cd967f..4e2f09b 100644 --- a/api/apibasic/errorcode.hpp +++ b/api/apibasic/errorcode.hpp @@ -118,10 +118,8 @@ typedef enum { /** * @brief mini servo error */ - kmini_servo_not_enable = ERROR_CODE(700, 0), // 未找到零点 - - - + kmini_servo_not_enable = ERROR_CODE(700, 0), // + kmini_servo_mode_not_support = ERROR_CODE(700, 1), // } error_t; diff --git a/api/zi_mini_servo.hpp b/api/zi_mini_servo.hpp index 6a7834e..71bf5e9 100644 --- a/api/zi_mini_servo.hpp +++ b/api/zi_mini_servo.hpp @@ -16,8 +16,9 @@ class ZIMiniServo { virtual int32_t mini_servo_active_cfg() = 0; virtual int32_t mini_servo_stop(int32_t breakstop) = 0; - virtual int32_t mini_servo_rotate(int32_t direction) = 0; - virtual int32_t mini_servo_move_to(int32_t position) = 0; + virtual int32_t mini_servo_move_to(int32_t pos3600) = 0; // 舵机模式 + virtual int32_t mini_servo_rotate(int32_t speed) = 0; // 速度模式 + virtual int32_t mini_servo_rotate_with_torque(int32_t torque) = 0; // 扭矩模式 virtual int32_t mini_servo_set_mid_point() = 0; virtual int32_t mini_servo_read_io_state(int32_t ioindex, int32_t* val) = 0;