Browse Source

update

change_pipette_api
zhaohe 2 years ago
parent
commit
7f12da5d40
  1. 18
      api/zi_module.hpp
  2. 4
      cmdid.hpp
  3. 6
      protocol_parser.cpp
  4. 6
      protocol_proxy.cpp
  5. 4
      protocol_proxy.hpp
  6. 4
      zmodule_device_manager.cpp
  7. 6
      zmodule_device_manager.hpp
  8. 5
      zmodule_device_script_cmder_paser.cpp

18
api/zi_module.hpp

@ -15,12 +15,16 @@ class ZIModule {
virtual int32_t getid(int32_t *id) = 0;
virtual int32_t module_stop() = 0;
virtual int32_t module_break() = 0;
virtual int32_t module_get_last_exec_status(int32_t *status) = 0;
virtual int32_t module_get_status(int32_t *status) = 0;
virtual int32_t module_get_error(int32_t *iserror) = 0;
virtual int32_t module_clear_error() = 0;
virtual int32_t module_stop() { return err::koperation_not_support; }
virtual int32_t module_break() { return err::koperation_not_support; }
virtual int32_t module_start() { return err::koperation_not_support; }
virtual int32_t module_get_last_exec_status(int32_t *status) { return err::koperation_not_support; }
virtual int32_t module_get_status(int32_t *status) { return err::koperation_not_support; }
virtual int32_t module_get_error(int32_t *iserror) { return err::koperation_not_support; }
virtual int32_t module_clear_error() { return err::koperation_not_support; }
virtual int32_t module_enable(int32_t enable) { return err::koperation_not_support; }
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; }
@ -29,7 +33,7 @@ class ZIModule {
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 io) { return err::koperation_not_support; }
virtual int32_t module_writeio(int32_t idindex, int32_t io) { return err::koperation_not_support; }
virtual int32_t module_read_adc(int32_t adcindex, int32_t *adc) { return err::koperation_not_support; }

4
cmdid.hpp

@ -8,6 +8,8 @@ typedef enum {
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; }
virtual int32_t module_start() { return err::koperation_not_support; }
#endif
kmodule_stop = CMDID(1, 1), // para:{}, ack:{}
@ -29,6 +31,8 @@ typedef enum {
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:{}
#if 0
virtual int32_t motor_enable(int32_t enable) { return err::koperation_not_support; }

6
protocol_parser.cpp

@ -120,6 +120,7 @@ void ZIProtocolParser::onRceivePacket(zcr_cmd_header_t* rxcmd, uint8_t* data, in
virtual int32_t module_stop() = 0;
virtual int32_t module_break() = 0;
virtual int32_t module_start() { return err::koperation_not_support; }
virtual int32_t module_get_last_exec_status(int32_t *status) = 0;
virtual int32_t module_get_status(int32_t *status) = 0;
virtual int32_t module_get_error(int32_t *iserror) = 0;
@ -152,6 +153,7 @@ void ZIProtocolParser::onRceivePacket(zcr_cmd_header_t* rxcmd, uint8_t* data, in
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; }
#endif
PROCESS_PACKET_00(kmodule_stop, ZIModule, module_stop);
@ -161,7 +163,7 @@ void ZIProtocolParser::onRceivePacket(zcr_cmd_header_t* rxcmd, uint8_t* data, in
PROCESS_PACKET_20(kmodule_set_param, ZIModule, module_set_param);
PROCESS_PACKET_11(kmodule_get_param, ZIModule, module_get_param);
PROCESS_PACKET_01(kmodule_readio, ZIModule, module_readio);
PROCESS_PACKET_10(kmodule_writeio, ZIModule, module_writeio);
PROCESS_PACKET_20(kmodule_writeio, ZIModule, module_writeio);
PROCESS_PACKET_11(kmodule_read_adc, ZIModule, module_read_adc);
PROCESS_PACKET_01(kmodule_get_error, ZIModule, module_get_error);
PROCESS_PACKET_00(kmodule_clear_error, ZIModule, module_clear_error);
@ -173,6 +175,8 @@ void ZIProtocolParser::onRceivePacket(zcr_cmd_header_t* rxcmd, uint8_t* data, in
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);
/*******************************************************************************
* motor *

6
protocol_proxy.cpp

@ -75,6 +75,8 @@ using namespace iflytop;
int32_t ZIProtocolProxy::module_stop() { PROXY_IMPL_00(kmodule_stop, 30); }
int32_t ZIProtocolProxy::module_break() { PROXY_IMPL_00(kmodule_break, 30); }
int32_t ZIProtocolProxy::module_start() { PROXY_IMPL_00(kmodule_start, 30); }
int32_t ZIProtocolProxy::module_get_last_exec_status(int32_t *ack0) { PROXY_IMPL_01(kmodule_get_last_exec_status, 30); }
int32_t ZIProtocolProxy::module_get_status(int32_t *ack0) { PROXY_IMPL_01(kmodule_get_status, 30); }
@ -82,7 +84,7 @@ int32_t ZIProtocolProxy::module_set_param(int32_t para0, int32_t para1) { PROXY_
int32_t ZIProtocolProxy::module_get_param(int32_t para0, int32_t *ack0) { PROXY_IMPL_11(kmodule_get_param, 30); }
int32_t ZIProtocolProxy::module_readio(int32_t *ack0) { PROXY_IMPL_01(kmodule_readio, 30); }
int32_t ZIProtocolProxy::module_writeio(int32_t para0) { PROXY_IMPL_10(kmodule_writeio, 30); }
int32_t ZIProtocolProxy::module_writeio(int32_t para0, int32_t para1) { PROXY_IMPL_20(kmodule_writeio, 30); }
int32_t ZIProtocolProxy::module_read_adc(int32_t para0, int32_t *ack0) { PROXY_IMPL_11(kmodule_read_adc, 30); }
int32_t ZIProtocolProxy::module_get_error(int32_t *ack0) { PROXY_IMPL_01(kmodule_get_error, 30); }
@ -104,6 +106,8 @@ int32_t ZIProtocolProxy::module_read_raw(int32_t startadd, uint8_t *data, int32_
return ecode;
}
int32_t ZIProtocolProxy::module_enable(int32_t para0) { PROXY_IMPL_10(kmodule_enable, 30); }
/*******************************************************************************
* ZIMotor *
*******************************************************************************/

4
protocol_proxy.hpp

@ -33,6 +33,7 @@ class ZIProtocolProxy : public ZIMotor, //
#endif
virtual int32_t module_stop() override;
virtual int32_t module_break() override;
virtual int32_t module_start() override;
virtual int32_t module_get_last_exec_status(int32_t *status) override;
virtual int32_t module_get_status(int32_t *status) override;
@ -40,7 +41,7 @@ class ZIProtocolProxy : public ZIMotor, //
virtual int32_t module_get_param(int32_t param_id, int32_t *param_value) override;
virtual int32_t module_readio(int32_t *io) override;
virtual int32_t module_writeio(int32_t io) override;
virtual int32_t module_writeio(int32_t ioindex, int32_t io) override;
virtual int32_t module_read_adc(int32_t adcindex, int32_t *adc) override;
@ -58,6 +59,7 @@ class ZIProtocolProxy : public ZIMotor, //
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;
/*******************************************************************************
* ZIMotor *

4
zmodule_device_manager.cpp

@ -35,7 +35,7 @@ int32_t ZModuleDeviceManager::module_get_status(uint16_t id, int32_t *status) {
int32_t ZModuleDeviceManager::module_set_param(uint16_t id, int32_t param_id, int32_t param_value) { PROXY_IMPL(ZIModule, module_set_param, param_id, param_value); }
int32_t ZModuleDeviceManager::module_get_param(uint16_t id, int32_t param_id, int32_t *param_value) { PROXY_IMPL(ZIModule, module_get_param, param_id, param_value); }
int32_t ZModuleDeviceManager::module_readio(uint16_t id, int32_t *io) { PROXY_IMPL(ZIModule, module_readio, io); }
int32_t ZModuleDeviceManager::module_writeio(uint16_t id, int32_t io) { PROXY_IMPL(ZIModule, module_writeio, io); }
int32_t ZModuleDeviceManager::module_writeio(uint16_t id, int32_t ioindex, int32_t io) { PROXY_IMPL(ZIModule, module_writeio, ioindex, io); }
int32_t ZModuleDeviceManager::module_read_adc(uint16_t id, int32_t adcindex, int32_t *adc) { PROXY_IMPL(ZIModule, module_read_adc, adcindex, adc); }
int32_t ZModuleDeviceManager::module_get_error(uint16_t id, int32_t *iserror) { PROXY_IMPL(ZIModule, module_get_error, iserror); }
int32_t ZModuleDeviceManager::module_clear_error(uint16_t id) { PROXY_IMPL(ZIModule, module_clear_error); }
@ -47,6 +47,8 @@ int32_t ZModuleDeviceManager::module_active_cfg(uint16_t id) { PROXY_IMPL(ZIModu
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); }
/*******************************************************************************
* ZIMotor *

6
zmodule_device_manager.hpp

@ -56,6 +56,7 @@ class ZModuleDeviceManager {
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);
virtual int32_t module_break(uint16_t id);
@ -67,7 +68,7 @@ class ZModuleDeviceManager {
virtual int32_t module_get_param(uint16_t id, int32_t param_id, int32_t *param_value);
virtual int32_t module_readio(uint16_t id, int32_t *io);
virtual int32_t module_writeio(uint16_t id, int32_t io);
virtual int32_t module_writeio(uint16_t id, int32_t ioindex, int32_t io);
virtual int32_t module_read_adc(uint16_t id, int32_t adcindex, int32_t *adc);
@ -85,6 +86,9 @@ class ZModuleDeviceManager {
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);
virtual int32_t module_start(uint16_t id);
/*******************************************************************************
* ZIMotor *

5
zmodule_device_script_cmder_paser.cpp

@ -96,16 +96,18 @@ void ZModuleDeviceScriptCmderPaser::initialize(ICmdParser* cancmder, ZModuleDevi
int32_t motor_set_current_pos_by_change_shift(uint16_t id, int32_t pos);
virtual int32_t motor_move_to_zero_forward_and_calculated_shift(int32_t findzerospeed, int32_t findzeroedge_speed, int32_t acc, int32_t overtime) override;
virtual int32_t motor_move_to_zero_backward_and_calculated_shift(int32_t findzerospeed, int32_t findzeroedge_speed, int32_t acc, int32_t overtime) override;
virtual int32_t module_enable(uint16_t id, int32_t enable);
#endif
PROCESS_PACKET_10(module_stop, "(mid)");
PROCESS_PACKET_10(module_start, "(mid)");
PROCESS_PACKET_10(module_break, "(mid)");
PROCESS_PACKET_11(module_get_last_exec_status, "(mid)");
PROCESS_PACKET_11(module_get_status, "(mid)");
PROCESS_PACKET_30(module_set_param, "(mid, param_id, param_value)");
PROCESS_PACKET_21(module_get_param, "(mid, param_id)");
PROCESS_PACKET_11(module_readio, "(mid)");
PROCESS_PACKET_20(module_writeio, "(mid, io)");
PROCESS_PACKET_30(module_writeio, "(mid,ioindex,io)");
PROCESS_PACKET_21(module_read_adc, "(mid,adc_id, adcindex)");
PROCESS_PACKET_11(module_get_error, "(mid)");
PROCESS_PACKET_10(module_clear_error, "(mid)");
@ -125,6 +127,7 @@ void ZModuleDeviceScriptCmderPaser::initialize(ICmdParser* cancmder, ZModuleDevi
ack->ecode = m_deviceManager->module_read_raw(atoi(paraV[0]), atoi(paraV[1]), ack->rawdata, &ack->rawlen);
ack->acktype = ICmdParserACK::kAckType_buf;
});
PROCESS_PACKET_20(module_enable, "(mid, enable)");
#if 0
virtual int32_t motor_enable(int32_t enable) { return err::koperation_not_support; }

Loading…
Cancel
Save