Browse Source

update

change_pipette_api
zhaohe 2 years ago
parent
commit
175ad9bb52
  1. 14
      api/api.hpp
  2. 68
      api/config_index.hpp
  3. 174
      api/reg_index.hpp
  4. 39
      api/state_index.hpp
  5. 3
      api/zi_module.hpp
  6. 2
      api/zi_motor.hpp
  7. 4
      cmdid.hpp
  8. 3
      protocol_parser.cpp
  9. 2
      protocol_proxy.cpp
  10. 5
      protocol_proxy.hpp
  11. 2
      zmodule_device_manager.cpp
  12. 4
      zmodule_device_manager.hpp
  13. 4
      zmodule_device_script_cmder_paser.cpp

14
api/api.hpp

@ -1,12 +1,24 @@
#pragma once
#include "config_index.hpp"
//
#include "errorcode.hpp"
//
#include "zi_module.hpp"
//
#include "zi_motor.hpp"
//
#include "zi_xymotor.hpp"
//
#include "packet_interface.hpp"
//
#include "i_zcan_cmder.hpp"
//
#include "i_zcan_cmder_master.hpp"
//
#include "i_cmdparser.hpp"
//
#include "state_index.hpp"
#include "protocol_constant.hpp"
//
#include "protocol_constant.hpp"
//
#include "reg_index.hpp"

68
api/config_index.hpp

@ -1,53 +1,45 @@
#pragma once
#include <stdint.h>
#if 0
namespace iflytop {
using namespace std;
#define CONFIG_CODE(type, subconfigindex) (type + subconfigindex)
typedef enum {
kcfg_motor_x_shift = CONFIG_CODE(100, 0), // x偏移
kcfg_motor_y_shift = CONFIG_CODE(100, 1), // y偏移
kcfg_motor_z_shift = CONFIG_CODE(100, 2), // z偏移
kcfg_motor_x_shaft = CONFIG_CODE(100, 3), // x轴是否反转
kcfg_motor_y_shaft = CONFIG_CODE(100, 4), // y轴是否反转
kcfg_motor_z_shaft = CONFIG_CODE(100, 5), // z轴是否反转
kcfg_motor_x_one_circle_pulse = CONFIG_CODE(100, 6), // x轴一圈脉冲数
kcfg_motor_y_one_circle_pulse = CONFIG_CODE(100, 7), // y轴一圈脉冲数
kcfg_motor_z_one_circle_pulse = CONFIG_CODE(100, 8), // z轴一圈脉冲数
kcfg_motor_default_velocity = CONFIG_CODE(100, 9), // 默认速度
kcfg_motor_default_acc = CONFIG_CODE(100, 10), // 默认加速度
kcfg_motor_default_dec = CONFIG_CODE(100, 11), // 默认减速度
kcfg_motor_default_break_dec = CONFIG_CODE(100, 12), // 默认减速度
/*******************************************************************************
* *
*******************************************************************************/
kcfg_motor_x_shift = CONFIG_CODE(100, 0), // x偏移
kcfg_motor_y_shift = CONFIG_CODE(100, 1), // y偏移
kcfg_motor_z_shift = CONFIG_CODE(100, 2), // z偏移
kcfg_motor_x_shaft = CONFIG_CODE(100, 3), // x轴是否反转
kcfg_motor_y_shaft = CONFIG_CODE(100, 4), // y轴是否反转
kcfg_motor_z_shaft = CONFIG_CODE(100, 5), // z轴是否反转
kcfg_motor_x_one_circle_pulse = CONFIG_CODE(100, 6), // x轴一圈脉冲数
kcfg_motor_y_one_circle_pulse = CONFIG_CODE(100, 7), // y轴一圈脉冲数
kcfg_motor_z_one_circle_pulse = CONFIG_CODE(100, 8), // z轴一圈脉冲数
kcfg_motor_default_velocity = CONFIG_CODE(100, 9), // 默认速度
kcfg_motor_default_acc = CONFIG_CODE(100, 10), // 默认加速度
kcfg_motor_default_dec = CONFIG_CODE(100, 11), // 默认减速度
kcfg_motor_default_break_dec = CONFIG_CODE(100, 12), // 默认减速度
/*******************************************************************************
* *
*******************************************************************************/
kcfg_motor_run_to_zero_max_x_d = CONFIG_CODE(150, 0), // x轴回零最大距离
kcfg_motor_run_to_zero_max_y_d = CONFIG_CODE(150, 1), // y轴回零最大距离
kcfg_motor_run_to_zero_max_z_d = CONFIG_CODE(150, 2), // z轴回零最大距离
kcfg_motor_run_to_zero_max_x_d = CONFIG_CODE(150, 0), // x轴回零最大距离
kcfg_motor_run_to_zero_max_y_d = CONFIG_CODE(150, 1), // y轴回零最大距离
kcfg_motor_run_to_zero_max_z_d = CONFIG_CODE(150, 2), // z轴回零最大距离
kcfg_motor_look_zero_edge_max_x_d = CONFIG_CODE(150, 3), // x轴找零边缘最大距离
kcfg_motor_look_zero_edge_max_y_d = CONFIG_CODE(150, 4), // y轴找零边缘最大距离
kcfg_motor_look_zero_edge_max_z_d = CONFIG_CODE(150, 5), // z轴找零边缘最大距离
kcfg_motor_run_to_zero_speed = CONFIG_CODE(150, 6), // 回零速度
kcfg_motor_run_to_zero_dec = CONFIG_CODE(150, 7), // 回零减速度
kcfg_motor_look_zero_edge_speed = CONFIG_CODE(150, 8), // 找零边缘速度
kcfg_motor_look_zero_edge_dec = CONFIG_CODE(150, 9), // 找零边缘减速度
kcfg_motor_run_to_zero_speed = CONFIG_CODE(150, 6), // 回零速度
kcfg_motor_run_to_zero_dec = CONFIG_CODE(150, 7), // 回零减速度
kcfg_motor_look_zero_edge_speed = CONFIG_CODE(150, 8), // 找零边缘速度
kcfg_motor_look_zero_edge_dec = CONFIG_CODE(150, 9), // 找零边缘减速度
/*******************************************************************************
* *
*******************************************************************************/
k_cfg_stepmotor_ihold = CONFIG_CODE(200, 0),
k_cfg_stepmotor_irun = CONFIG_CODE(200, 1),
k_cfg_stepmotor_iholddelay = CONFIG_CODE(200, 2),
/*******************************************************************************
* XY_ROBOT_CONFIG *
*******************************************************************************/
@ -55,4 +47,14 @@ typedef enum {
} config_index_t;
} // namespace iflytop
} // namespace iflytop
#endif
/**
* @brief
*
* 0->1000
* Robot/Motor通用配置和状态 1000->2000
* Sensor通用配置和状态 2000->3000
* PID通用配置和状态 4000->4100
*/

174
api/reg_index.hpp

@ -0,0 +1,174 @@
#pragma once
#include <stdint.h>
namespace iflytop {
using namespace std;
#define REG_INDEX(type, subconfigindex) (type + subconfigindex)
typedef enum {
/*******************************************************************************
* (0->1000) *
*******************************************************************************/
kreg_module_version = REG_INDEX(0, 0), // 模块版本
kreg_module_type = REG_INDEX(0, 1), // 模块类型
kreg_module_status = REG_INDEX(0, 2), // 0idle,1busy,2error
kreg_module_errorcode = REG_INDEX(0, 3), // inited_flag
kreg_module_initflag = REG_INDEX(0, 4), // inited_flag
kreg_module_enableflag = REG_INDEX(0, 5), // 0idle,1busy,2error
kreg_module_last_cmd_exec_status = REG_INDEX(20, 0), // 上一条指令执行的状态
kreg_module_last_cmd_exec_val0 = REG_INDEX(20, 1), // 上一条指令执行的结果0
kreg_module_last_cmd_exec_val1 = REG_INDEX(20, 2), // 上一条指令执行的结果1
kreg_module_last_cmd_exec_val2 = REG_INDEX(20, 3), // 上一条指令执行的结果2
kreg_module_last_cmd_exec_val3 = REG_INDEX(20, 4), // 上一条指令执行的结果3
kreg_module_last_cmd_exec_val4 = REG_INDEX(20, 5), // 上一条指令执行的结果4
kreg_module_last_cmd_exec_val5 = REG_INDEX(20, 6), // 上一条指令执行的结果5
kreg_module_private0 = REG_INDEX(200, 0), // 模块私有状态0
kreg_module_private1 = REG_INDEX(200, 1), // 模块私有状态1
kreg_module_private2 = REG_INDEX(200, 2), // 模块私有状态2
kreg_module_private3 = REG_INDEX(200, 3), // 模块私有状态3
kreg_module_private4 = REG_INDEX(200, 4), // 模块私有状态4
kreg_module_private5 = REG_INDEX(200, 5), // 模块私有状态5
kreg_module_private6 = REG_INDEX(200, 6), // 模块私有状态6
kreg_module_private7 = REG_INDEX(200, 7), // 模块私有状态7
kreg_module_private8 = REG_INDEX(200, 8), // 模块私有状态8
kreg_module_private9 = REG_INDEX(200, 9), // 模块私有状态9
/*******************************************************************************
* (1000->1999 *
*******************************************************************************/
kreg_motor_x_shift = REG_INDEX(1000, 0), // x偏移
kreg_motor_y_shift = REG_INDEX(1000, 1), // y偏移
kreg_motor_z_shift = REG_INDEX(1000, 2), // z偏移
kreg_motor_x_shaft = REG_INDEX(1000, 3), // x轴是否反转
kreg_motor_y_shaft = REG_INDEX(1000, 4), // y轴是否反转
kreg_motor_z_shaft = REG_INDEX(1000, 5), // z轴是否反转
kreg_motor_x_one_circle_pulse = REG_INDEX(1000, 6), // x轴一圈脉冲数
kreg_motor_y_one_circle_pulse = REG_INDEX(1000, 7), // y轴一圈脉冲数
kreg_motor_z_one_circle_pulse = REG_INDEX(1000, 8), // z轴一圈脉冲数
kreg_motor_default_velocity = REG_INDEX(1000, 9), // 默认速度
kreg_motor_default_acc = REG_INDEX(1000, 10), // 默认加速度
kreg_motor_default_dec = REG_INDEX(1000, 11), // 默认减速度
kreg_motor_default_break_dec = REG_INDEX(1000, 12), // 默认减速度
kreg_stepmotor_ihold = REG_INDEX(1000, 13), // 步进电机电流配置
kreg_stepmotor_irun = REG_INDEX(1000, 14), // 步进电机电流配置
kreg_stepmotor_iholddelay = REG_INDEX(1000, 15), // 步进电机电流配置
kreg_motor_run_to_zero_max_x_d = REG_INDEX(1050, 0), // x轴回零最大距离
kreg_motor_run_to_zero_max_y_d = REG_INDEX(1050, 1), // y轴回零最大距离
kreg_motor_run_to_zero_max_z_d = REG_INDEX(1050, 2), // z轴回零最大距离
kreg_motor_look_zero_edge_max_x_d = REG_INDEX(1050, 3), // x轴找零边缘最大距离
kreg_motor_look_zero_edge_max_y_d = REG_INDEX(1050, 4), // y轴找零边缘最大距离
kreg_motor_look_zero_edge_max_z_d = REG_INDEX(1050, 5), // z轴找零边缘最大距离
kreg_motor_run_to_zero_speed = REG_INDEX(1050, 6), // 回零速度
kreg_motor_run_to_zero_dec = REG_INDEX(1050, 7), // 回零减速度
kreg_motor_look_zero_edge_speed = REG_INDEX(1050, 8), // 找零边缘速度
kreg_motor_look_zero_edge_dec = REG_INDEX(1050, 9), // 找零边缘减速度
kreg_xyrobot_robot_type = REG_INDEX(1100, 0), // 机器人类型 0:hbot 1:corexy
kreg_robot_move = REG_INDEX(1500, 0), // 机器人是否在移动
kreg_robot_x_pos = REG_INDEX(1500, 1), // 机器人x坐标
kreg_robot_y_pos = REG_INDEX(1500, 2), // 机器人y坐标
kreg_robot_z_pos = REG_INDEX(1500, 3), // 机器人z坐标
kreg_robot_x_velocity = REG_INDEX(1500, 4), // 机器人x速度
kreg_robot_y_velocity = REG_INDEX(1500, 5), // 机器人y速度
kreg_robot_z_velocity = REG_INDEX(1500, 6), // 机器人z速度
kreg_robot_x_torque = REG_INDEX(1500, 7), // 机器人x电流
kreg_robot_y_torque = REG_INDEX(1500, 8), // 机器人y电流
kreg_robot_z_torque = REG_INDEX(1500, 9), // 机器人z电流
/*******************************************************************************
* (2000->2999) *
*******************************************************************************/
kreg_sensor_current = REG_INDEX(2000, 0), // 电流
kreg_sensor_voltage = REG_INDEX(2000, 1), // 电压
kreg_sensor_temperature = REG_INDEX(2000, 2), // 温度
kreg_sensor_humidity = REG_INDEX(2000, 3), // 湿度
kreg_sensor_wind_speed = REG_INDEX(2000, 4), // 风速
kreg_sensor_wind_dir = REG_INDEX(2000, 5), // 风向
kreg_sensor_air_press = REG_INDEX(2000, 6), // 气压
kreg_sensor_pm25 = REG_INDEX(2000, 7), // PM2.5
kreg_sensor_pm10 = REG_INDEX(2000, 8), // PM10
kreg_sensor_co = REG_INDEX(2000, 9), // CO
kreg_sensor_co2 = REG_INDEX(2000, 10), // CO
kreg_sensor_no2 = REG_INDEX(2000, 11), // NO2
kreg_sensor_so2 = REG_INDEX(2000, 12), // SO2
kreg_sensor_o3 = REG_INDEX(2000, 13), // O3
kreg_sensor_light_intensity = REG_INDEX(2000, 14), // 光照强度
kreg_sensor_radiation = REG_INDEX(2000, 15), // 总辐射量
kreg_sensor_hydrogen_peroxide_volume = REG_INDEX(2000, 16), // ppm 0x0100
kreg_sensor_h2o_h2o2_rs = REG_INDEX(2000, 17), // %RS * 100
kreg_sensor_relative_humidity = REG_INDEX(2000, 18), // %RH * 100
kreg_sensor_absolute_hydrogen_peroxide = REG_INDEX(2000, 19), // mg/m3
kreg_sensor_h2o_h2o2dew_point_temperature = REG_INDEX(2000, 20), // °C * 100
kreg_sensor_water_volume = REG_INDEX(2000, 21), // ppm
kreg_sensor_water_vapor_pressure = REG_INDEX(2000, 22), // hpa
kreg_sensor_absolute_humidity = REG_INDEX(2000, 23), // g/m3
kreg_sensor_water_vapor_saturation_pressure_h2o = REG_INDEX(2000, 24), // hpa
kreg_sensor_h2o2_vapor_pressure = REG_INDEX(2000, 25), // hpa
kreg_sensor_water_vapor_saturation_pressure_h2o_h2o2 = REG_INDEX(2000, 26), // hpa
kreg_sensor_temperature0 = REG_INDEX(2100, 0), // 温度1
kreg_sensor_temperature1 = REG_INDEX(2100, 1), // 温度2
kreg_sensor_temperature2 = REG_INDEX(2100, 2), // 温度3
kreg_sensor_temperature3 = REG_INDEX(2100, 3), // 温度4
kreg_sensor_temperature4 = REG_INDEX(2100, 4), // 温度5
kreg_sensor_temperature5 = REG_INDEX(2100, 5), // 温度6
kreg_sensor_temperature6 = REG_INDEX(2100, 6), // 温度7
kreg_sensor_temperature7 = REG_INDEX(2100, 7), // 温度8
kreg_sensor_temperature8 = REG_INDEX(2100, 8), // 温度9
kreg_sensor_temperature9 = REG_INDEX(2100, 9), // 温度10
kreg_sensor_pressure0 = REG_INDEX(2120, 0), // 压力0
kreg_sensor_pressure1 = REG_INDEX(2120, 1), // 压力1
kreg_sensor_pressure2 = REG_INDEX(2120, 2), // 压力2
kreg_sensor_pressure3 = REG_INDEX(2120, 3), // 压力3
kreg_sensor_pressure4 = REG_INDEX(2120, 4), // 压力4
kreg_sensor_pressure5 = REG_INDEX(2120, 5), // 压力5
kreg_sensor_pressure6 = REG_INDEX(2120, 6), // 压力6
kreg_sensor_pressure7 = REG_INDEX(2120, 7), // 压力7
kreg_sensor_pressure8 = REG_INDEX(2120, 8), // 压力8
kreg_sensor_pressure9 = REG_INDEX(2120, 9), // 压力9
kreg_sensor_humidity0 = REG_INDEX(2130, 0), // 湿度0
kreg_sensor_humidity1 = REG_INDEX(2130, 1), // 湿度1
kreg_sensor_humidity2 = REG_INDEX(2130, 2), // 湿度2
kreg_sensor_humidity3 = REG_INDEX(2130, 3), // 湿度3
kreg_sensor_humidity4 = REG_INDEX(2130, 4), // 湿度4
kreg_sensor_humidity5 = REG_INDEX(2130, 5), // 湿度5
kreg_sensor_humidity6 = REG_INDEX(2130, 6), // 湿度6
kreg_sensor_humidity7 = REG_INDEX(2130, 7), // 湿度7
kreg_sensor_humidity8 = REG_INDEX(2130, 8), // 湿度8
kreg_sensor_humidity9 = REG_INDEX(2130, 9), // 湿度9
/*******************************************************************************
* PID控制器(3000->4000) *
*******************************************************************************/
kreg_pid_kp = REG_INDEX(3000, 0), // kp
kreg_pid_ki = REG_INDEX(3000, 1), // ki
kreg_pid_kd = REG_INDEX(3000, 2), // kd
kreg_pid_max_max_output = REG_INDEX(3000, 3), // 最大输出
kreg_pid_max_min_output = REG_INDEX(3000, 4), // 最小输出
kreg_pid_max_max_integral = REG_INDEX(3000, 5), // 最大积分
kreg_pid_max_min_integral = REG_INDEX(3000, 6), // 最小积分
kreg_error_limit = REG_INDEX(3000, 7), // 误差限制
kreg_compute_interval = REG_INDEX(3000, 8), // 计算间隔
kreg_pid_target = REG_INDEX(3050, 0), // 目标数值
kreg_pid_nowoutput = REG_INDEX(3050, 1), // 当前输出
kreg_pid_feedbackval = REG_INDEX(3050, 2), // 当前输出
/*******************************************************************************
* *
*******************************************************************************/
kreg_fan_cfg_speed_level = REG_INDEX(4000, 0), // 风扇转速
} reg_index_t;
} // namespace iflytop
/**
* @brief
*
* 0->1000
* Robot/Motor通用配置和状态 1000->2000
* Sensor通用配置和状态 2000->3000
* PID通用配置和状态 4000->4100
*/

39
api/state_index.hpp

@ -7,45 +7,6 @@ using namespace std;
#define STATE_INDEX(type, subconfigindex) (type + subconfigindex)
typedef enum {
/**
* @brief
*
* 0 -> 100
* 100 -> 199 1
* 100 -> 299 2
* 1000 -> 1100 xy电机状态
*
*
*/
kstate_module_status = STATE_INDEX(0, 0), // 0idle,1busy,2error
kstate_module_errorcode = STATE_INDEX(0, 1), //
kstate_motor1_move = STATE_INDEX(100, 0), //
kstate_motor1_enable = STATE_INDEX(100, 1), //
kstate_motor1_current = STATE_INDEX(100, 2), //
kstate_motor1_vel = STATE_INDEX(100, 3), //
kstate_motor1_pos = STATE_INDEX(100, 4), //
kstate_motor1_temperature = STATE_INDEX(100, 5), //
kstate_motor1_dpos = STATE_INDEX(100, 6), //
kstate_motor2_move = STATE_INDEX(110, 0), //
kstate_motor2_enable = STATE_INDEX(110, 1), //
kstate_motor2_current = STATE_INDEX(110, 2), //
kstate_motor2_vel = STATE_INDEX(110, 3), //
kstate_motor2_pos = STATE_INDEX(110, 4), //
kstate_motor2_temperature = STATE_INDEX(110, 5), //
kstate_motor2_dpos = STATE_INDEX(110, 6), //
kstate_xyrobot_move = STATE_INDEX(1000, 0), //
kstate_xyrobot_enable = STATE_INDEX(1000, 1), //
kstate_xyrobot_x_pos = STATE_INDEX(1000, 2), //
kstate_xyrobot_y_pos = STATE_INDEX(1000, 3), //
kstate_xyrobot_z_pos = STATE_INDEX(1000, 4), //
kstate_xyrobot_x_dpos = STATE_INDEX(1000, 5), //
kstate_xyrobot_y_dpos = STATE_INDEX(1000, 6), //
kstate_xyrobot_z_dpos = STATE_INDEX(1000, 7), //
} state_index_t;
} // namespace iflytop

3
api/zi_module.hpp

@ -29,9 +29,6 @@ class ZIModule {
virtual int32_t module_set_param(int32_t param_id, int32_t param_value) { return err::koperation_not_support; }
virtual int32_t module_get_param(int32_t param_id, int32_t *param_value) { return err::koperation_not_support; }
virtual int32_t module_set_state(int32_t state_id, int32_t state_value) { return err::koperation_not_support; }
virtual int32_t module_get_state(int32_t state_id, int32_t *state_value) { return err::koperation_not_support; }
virtual int32_t module_readio(int32_t *io) { return err::koperation_not_support; }
virtual int32_t module_writeio(int32_t idindex, int32_t io) { return err::koperation_not_support; }

2
api/zi_motor.hpp

@ -28,6 +28,8 @@ class ZIMotor {
virtual int32_t motor_move_to_zero_forward_and_calculated_shift(int32_t findzerospeed, int32_t findzeroedge_speed, int32_t acc, int32_t overtime) { return err::koperation_not_support; }
virtual int32_t motor_move_to_zero_backward_and_calculated_shift(int32_t findzerospeed, int32_t findzeroedge_speed, int32_t acc, int32_t overtime) { return err::koperation_not_support; }
virtual int32_t motor_calculated_pos_by_move_to_zero() { return err::koperation_not_support; }
virtual int32_t motor_read_pos(int32_t* pos) { return err::koperation_not_support; }
virtual int32_t motor_set_current_pos_by_change_shift(int32_t pos) { return err::koperation_not_support; } // Ò»°ãÓÃÓÚ¶æ»ú

4
cmdid.hpp

@ -5,7 +5,6 @@ namespace iflytop {
namespace zcr {
typedef enum {
#if 0
virtual int32_t module_set_state(int32_t state_id, int32_t state_value) { return err::koperation_not_support; }
virtual int32_t module_get_state(int32_t state_id, int32_t *state_value) { return err::koperation_not_support; }
virtual int32_t module_read_raw(int32_t startadd, int32_t *data, int32_t *len) { return err::koperation_not_support; }
virtual int32_t module_enable(int32_t enable) { return err::koperation_not_support; }
@ -28,8 +27,6 @@ typedef enum {
kmodule_factory_reset = CMDID(1, 14), // para:{}, ack:{}
kmodule_flush_cfg = CMDID(1, 15), // para:{}, ack:{}
kmodule_active_cfg = CMDID(1, 16), // para:{}, ack:{}
kmodule_set_state = CMDID(1, 17), // para:{4,4}, ack:{}
kmodule_get_state = CMDID(1, 18), // para:{4}, ack:{4}
kmodule_read_raw = CMDID(1, 19), // para:{4,4}, ack:{4}
kmodule_enable = CMDID(1, 20), // para:{4}, ack:{}
kmodule_start = CMDID(1, 21), // para:{4}, ack:{}
@ -72,6 +69,7 @@ typedef enum {
kmotor_motor_move_to_zero_forward_and_calculated_shift = CMDID(2, 13), // para:{4,4,4,4}, ack:{} //int32_t findzerospeed, int32_t findzeroedge_speed, int32_t acc, int32_t overtime
kmotor_motor_move_to_zero_backward_and_calculated_shift = CMDID(2, 14), // para:{4,4,4,4}, ack:{} //int32_t findzerospeed, int32_t findzeroedge_speed, int32_t acc, int32_t overtime
kmotor_move_to_torque = CMDID(2, 15), // para:{4,4,4}, ack:{}
#if 0
virtual ~ZIXYMotor() {}

3
protocol_parser.cpp

@ -150,7 +150,6 @@ void ZIProtocolParser::onRceivePacket(zcr_cmd_header_t* rxcmd, uint8_t* data, in
virtual int32_t module_flush_cfg() { return err::koperation_not_support; }
virtual int32_t module_active_cfg() { return err::koperation_not_support; }
virtual int32_t module_set_state(int32_t state_id, int32_t state_value) { return err::koperation_not_support; }
virtual int32_t module_get_state(int32_t state_id, int32_t *state_value) { return err::koperation_not_support; }
virtual int32_t module_read_raw(int32_t startadd, int32_t *data, int32_t *len) { return err::koperation_not_support; }
virtual int32_t module_enable(int32_t enable) { return err::koperation_not_support; }
@ -172,8 +171,6 @@ void ZIProtocolParser::onRceivePacket(zcr_cmd_header_t* rxcmd, uint8_t* data, in
PROCESS_PACKET_00(kmodule_factory_reset, ZIModule, module_factory_reset);
PROCESS_PACKET_00(kmodule_flush_cfg, ZIModule, module_flush_cfg);
PROCESS_PACKET_00(kmodule_active_cfg, ZIModule, module_active_cfg);
PROCESS_PACKET_20(kmodule_set_state, ZIModule, module_set_state);
PROCESS_PACKET_11(kmodule_get_state, ZIModule, module_get_state);
PROCESS_BUF_REQUEST_1(kmodule_read_raw, ZIModule, module_read_raw);
PROCESS_PACKET_10(kmodule_enable, ZIModule, module_enable);
PROCESS_PACKET_00(kmodule_start, ZIModule, module_start);

2
protocol_proxy.cpp

@ -97,8 +97,6 @@ int32_t ZIProtocolProxy::module_factory_reset() { PROXY_IMPL_00(kmodule_factory_
int32_t ZIProtocolProxy::module_flush_cfg() { PROXY_IMPL_00(kmodule_flush_cfg, 5000); }
int32_t ZIProtocolProxy::module_active_cfg() { PROXY_IMPL_00(kmodule_active_cfg, 30); }
int32_t ZIProtocolProxy::module_set_state(int32_t para0, int32_t para1) { PROXY_IMPL_20(kmodule_set_state, 30); };
int32_t ZIProtocolProxy::module_get_state(int32_t para0, int32_t *ack0) { PROXY_IMPL_11(kmodule_get_state, 30); };
int32_t ZIProtocolProxy::module_read_raw(int32_t startadd, uint8_t *data, int32_t *len) {
int32_t param[1 + 1] = {0};
param[0] = startadd;

5
protocol_proxy.hpp

@ -28,8 +28,6 @@ class ZIProtocolProxy : public ZIMotor, //
* ZIModule *
*******************************************************************************/
#if 0
virtual int32_t module_set_state(int32_t state_id, int32_t state_value) { return err::koperation_not_support; }
virtual int32_t module_get_state(int32_t state_id, int32_t *state_value) { return err::koperation_not_support; }
#endif
virtual int32_t module_stop() override;
virtual int32_t module_break() override;
@ -55,9 +53,6 @@ class ZIProtocolProxy : public ZIMotor, //
virtual int32_t module_flush_cfg() override;
virtual int32_t module_active_cfg() override;
virtual int32_t module_set_state(int32_t state_id, int32_t state_value) override;
virtual int32_t module_get_state(int32_t state_id, int32_t *state_value) override;
virtual int32_t module_read_raw(int32_t startadd, uint8_t *data, int32_t *len) override;
virtual int32_t module_enable(int32_t enable) override;

2
zmodule_device_manager.cpp

@ -44,8 +44,6 @@ int32_t ZModuleDeviceManager::module_get_inited_flag(uint16_t id, int32_t *flag)
int32_t ZModuleDeviceManager::module_factory_reset(uint16_t id) { PROXY_IMPL(ZIModule, module_factory_reset); }
int32_t ZModuleDeviceManager::module_flush_cfg(uint16_t id) { PROXY_IMPL(ZIModule, module_flush_cfg); }
int32_t ZModuleDeviceManager::module_active_cfg(uint16_t id) { PROXY_IMPL(ZIModule, module_active_cfg); }
int32_t ZModuleDeviceManager::module_set_state(uint16_t id, int32_t state_id, int32_t state_value) { PROXY_IMPL(ZIModule, module_set_state, state_id, state_value); }
int32_t ZModuleDeviceManager::module_get_state(uint16_t id, int32_t state_id, int32_t *state_value) { PROXY_IMPL(ZIModule, module_get_state, state_id, state_value); }
int32_t ZModuleDeviceManager::module_read_raw(uint16_t id, int32_t startadd, uint8_t *data, int32_t *len) { PROXY_IMPL(ZIModule, module_read_raw, startadd, data, len); }
int32_t ZModuleDeviceManager::module_enable(uint16_t id, int32_t enable) { PROXY_IMPL(ZIModule, module_enable, enable); }
int32_t ZModuleDeviceManager::module_start(uint16_t id) { PROXY_IMPL(ZIModule, module_start); }

4
zmodule_device_manager.hpp

@ -54,8 +54,6 @@ class ZModuleDeviceManager {
virtual int32_t module_flush_cfg() { return err::koperation_not_support; }
virtual int32_t module_active_cfg() { return err::koperation_not_support; }
virtual int32_t module_set_state(int32_t state_id, int32_t state_value) { return err::koperation_not_support; }
virtual int32_t module_get_state(int32_t state_id, int32_t *state_value) { return err::koperation_not_support; }
virtual int32_t module_enable(int32_t enable) override;
#endif
virtual int32_t module_stop(uint16_t id);
@ -82,8 +80,6 @@ class ZModuleDeviceManager {
virtual int32_t module_flush_cfg(uint16_t id);
virtual int32_t module_active_cfg(uint16_t id);
virtual int32_t module_set_state(uint16_t id, int32_t state_id, int32_t state_value);
virtual int32_t module_get_state(uint16_t id, int32_t state_id, int32_t *state_value);
virtual int32_t module_read_raw(uint16_t id, int32_t startadd, uint8_t *data, int32_t *len);
virtual int32_t module_enable(uint16_t id, int32_t enable);

4
zmodule_device_script_cmder_paser.cpp

@ -74,8 +74,6 @@ void ZModuleDeviceScriptCmderPaser::initialize(ICmdParser* cancmder, ZModuleDevi
int32_t module_flush_cfg(uint16_t id);
int32_t module_active_cfg(uint16_t id);
int32_t module_set_state(uint16_t id, int32_t state_id, int32_t state_value);
int32_t module_get_state(uint16_t id, int32_t state_id, int32_t *state_value);
virtual int32_t module_read_raw(uint16_t id, int32_t startadd, int32_t readlen, uint8_t *data, int32_t *len);
/*******************************************************************************
@ -116,8 +114,6 @@ void ZModuleDeviceScriptCmderPaser::initialize(ICmdParser* cancmder, ZModuleDevi
PROCESS_PACKET_10(module_factory_reset, "(mid)");
PROCESS_PACKET_10(module_flush_cfg, "(mid)");
PROCESS_PACKET_10(module_active_cfg, "(mid)");
PROCESS_PACKET_30(module_set_state, "(mid, state_id, state_value)");
PROCESS_PACKET_21(module_get_state, "(mid, state_id)");
cancmder->regCMD("module_read_raw", "(mid, readsize)", 2, [this](int32_t paramN, const char* paraV[], ICmdParserACK* ack) {
if (atoi(paraV[2]) > sizeof(ack->rawdata)) {
ack->ecode = err::kbuffer_not_enough;

Loading…
Cancel
Save