From 09f7b267d2505cd7d2409aa1af71dad54892241b Mon Sep 17 00:00:00 2001 From: zhaohe Date: Mon, 13 Nov 2023 21:40:25 +0800 Subject: [PATCH 1/4] update --- api/zi_code_scaner.hpp | 2 ++ protocol_parser.cpp | 2 +- protocol_proxy.cpp | 2 +- protocol_proxy.hpp | 3 +-- zmodule_device_manager.cpp | 2 +- zmodule_device_manager.hpp | 2 +- zmodule_device_script_cmder_paser.cpp | 2 +- 7 files changed, 8 insertions(+), 7 deletions(-) diff --git a/api/zi_code_scaner.hpp b/api/zi_code_scaner.hpp index 13f6375..18a0c8c 100644 --- a/api/zi_code_scaner.hpp +++ b/api/zi_code_scaner.hpp @@ -7,10 +7,12 @@ namespace iflytop { using namespace std; +#if 0 class ZICodeScaner { public: virtual int32_t code_scaner_start_scan() { return err::koperation_not_support; } virtual int32_t code_scaner_stop_scan() { return err::koperation_not_support; } virtual int32_t code_scaner_read_scaner_result(int32_t startadd, uint8_t *data, int32_t *len) { return err::koperation_not_support; } }; +#endif } // namespace iflytop \ No newline at end of file diff --git a/protocol_parser.cpp b/protocol_parser.cpp index d48812e..1c3af10 100644 --- a/protocol_parser.cpp +++ b/protocol_parser.cpp @@ -257,11 +257,11 @@ void ZIProtocolParser::onRceivePacket(zcr_cmd_header_t* rxcmd, uint8_t* data, in virtual int32_t code_scaner_start_scan() { return err::koperation_not_support; } virtual int32_t code_scaner_stop_scan() { return err::koperation_not_support; } virtual int32_t code_scaner_read_scaner_result(int32_t startadd, uint8_t *data, int32_t *len) { return err::koperation_not_support; } -#endif PROCESS_PACKET_00(kcode_scaner_start_scan, ZICodeScaner, code_scaner_start_scan); PROCESS_PACKET_00(kcode_scaner_stop_scan, ZICodeScaner, code_scaner_stop_scan); PROCESS_BUF_REQUEST_1(kcode_scaner_read_scaner_result, ZICodeScaner, code_scaner_read_scaner_result); +#endif #if 0 virtual int32_t pipette_ctrl_init_device() { return err::koperation_not_support; }; diff --git a/protocol_proxy.cpp b/protocol_proxy.cpp index 2066b2e..dfd4c67 100644 --- a/protocol_proxy.cpp +++ b/protocol_proxy.cpp @@ -193,7 +193,6 @@ int32_t ZIProtocolProxy::xymotor_calculated_pos_by_move_to_zero() { PROXY_IMPL_0 virtual int32_t code_scaner_start_scan() { return err::koperation_not_support; } virtual int32_t code_scaner_stop_scan() { return err::koperation_not_support; } virtual int32_t code_scaner_read_scaner_result(int32_t startadd, uint8_t *data, int32_t *len) { return err::koperation_not_support; } -#endif int32_t ZIProtocolProxy::code_scaner_start_scan() { PROXY_IMPL_00(kcode_scaner_start_scan, OVERTIME); } int32_t ZIProtocolProxy::code_scaner_stop_scan() { PROXY_IMPL_00(kcode_scaner_stop_scan, OVERTIME); } @@ -203,6 +202,7 @@ int32_t ZIProtocolProxy::code_scaner_read_scaner_result(int32_t para0, uint8_t * int32_t ecode = m_cancmder->sendCmdAndReceiveBuf(kmodule_read_raw, m_id, param, 1, data, len, 100); return ecode; } +#endif #if 0 virtual int32_t pipette_ctrl_init_device() { return err::koperation_not_support; }; diff --git a/protocol_proxy.hpp b/protocol_proxy.hpp index cbbd6a5..c5d6dcf 100644 --- a/protocol_proxy.hpp +++ b/protocol_proxy.hpp @@ -9,7 +9,6 @@ namespace iflytop { class ZIProtocolProxy : public ZIMotor, // public ZIXYMotor, // public ZIModule, - public ZICodeScaner, public ZIPipetteCtrlModule, public ZIA8000OpticalModule { private: @@ -149,11 +148,11 @@ class ZIProtocolProxy : public ZIMotor, // virtual int32_t code_scaner_start_scan() { return err::koperation_not_support; } virtual int32_t code_scaner_stop_scan() { return err::koperation_not_support; } virtual int32_t code_scaner_read_scaner_result(int32_t startadd, uint8_t *data, int32_t *len) { return err::koperation_not_support; } -#endif virtual int32_t code_scaner_start_scan() override; virtual int32_t code_scaner_stop_scan() override; virtual int32_t code_scaner_read_scaner_result(int32_t startadd, uint8_t *data, int32_t *len) override; +#endif #if 0 virtual int32_t pipette_ctrl_init_device() { return err::koperation_not_support; }; diff --git a/zmodule_device_manager.cpp b/zmodule_device_manager.cpp index 4ff43e5..9e254b7 100644 --- a/zmodule_device_manager.cpp +++ b/zmodule_device_manager.cpp @@ -138,10 +138,10 @@ int32_t ZModuleDeviceManager::xymotor_calculated_pos_by_move_to_zero(uint16_t id virtual int32_t code_scaner_start_scan(uint16_t id); virtual int32_t code_scaner_stop_scan(uint16_t id); virtual int32_t code_scaner_read_scaner_result(uint16_t id, int32_t startadd, uint8_t *data, int32_t *len); -#endif int32_t ZModuleDeviceManager::code_scaner_start_scan(uint16_t id) { PROXY_IMPL(ZICodeScaner, code_scaner_start_scan); } int32_t ZModuleDeviceManager::code_scaner_stop_scan(uint16_t id) { PROXY_IMPL(ZICodeScaner, code_scaner_stop_scan); } int32_t ZModuleDeviceManager::code_scaner_read_scaner_result(uint16_t id, int32_t startadd, uint8_t *data, int32_t *len) { PROXY_IMPL(ZICodeScaner, code_scaner_read_scaner_result, startadd, data, len); } +#endif #if 0 virtual int32_t pipette_ctrl_init_device() { return err::koperation_not_support; }; diff --git a/zmodule_device_manager.hpp b/zmodule_device_manager.hpp index a2044e4..49609d1 100644 --- a/zmodule_device_manager.hpp +++ b/zmodule_device_manager.hpp @@ -184,11 +184,11 @@ class ZModuleDeviceManager { virtual int32_t code_scaner_start_scan() { return err::koperation_not_support; } virtual int32_t code_scaner_stop_scan() { return err::koperation_not_support; } virtual int32_t code_scaner_read_scaner_result(int32_t startadd, uint8_t *data, int32_t *len) { return err::koperation_not_support; } -#endif virtual int32_t code_scaner_start_scan(uint16_t id); virtual int32_t code_scaner_stop_scan(uint16_t id); virtual int32_t code_scaner_read_scaner_result(uint16_t id, int32_t startadd, uint8_t *data, int32_t *len); +#endif #if 0 virtual int32_t pipette_ctrl_init_device() { return err::koperation_not_support; }; diff --git a/zmodule_device_script_cmder_paser.cpp b/zmodule_device_script_cmder_paser.cpp index b56211f..faae359 100644 --- a/zmodule_device_script_cmder_paser.cpp +++ b/zmodule_device_script_cmder_paser.cpp @@ -207,7 +207,6 @@ void ZModuleDeviceScriptCmderPaser::regfn() { virtual int32_t code_scaner_start_scan() { return err::koperation_not_support; } virtual int32_t code_scaner_stop_scan() { return err::koperation_not_support; } virtual int32_t code_scaner_read_scaner_result(int32_t startadd, uint8_t *data, int32_t *len) { return err::koperation_not_support; } -#endif PROCESS_PACKET_10(code_scaner_start_scan, "(mid)"); PROCESS_PACKET_10(code_scaner_stop_scan, "(mid)"); @@ -220,6 +219,7 @@ void ZModuleDeviceScriptCmderPaser::regfn() { ack->ecode = m_deviceManager->module_read_raw(atoi(paraV[0]), atoi(paraV[1]), ack->rawdata, &ack->rawlen); ack->acktype = ICmdParserACK::kAckType_buf; }); +#endif #if 0 virtual int32_t pipette_ctrl_init_device() { return err::koperation_not_support; }; From f930257827ce5ba915ba5f8404518f6949d83a91 Mon Sep 17 00:00:00 2001 From: zhaohe Date: Mon, 13 Nov 2023 21:40:58 +0800 Subject: [PATCH 2/4] update --- api/module_type_index.hpp | 11 ++++++----- api/zi_module.hpp | 11 ++++++++--- 2 files changed, 14 insertions(+), 8 deletions(-) diff --git a/api/module_type_index.hpp b/api/module_type_index.hpp index 9820c57..b2798a4 100644 --- a/api/module_type_index.hpp +++ b/api/module_type_index.hpp @@ -3,10 +3,11 @@ namespace iflytop { typedef enum { - kuniversal_module = 0, - khbot_module = 1, - kmotor_module = 2, - ktemperature_ctrl_module = 3, - kmini_servo_motor_module = 4, + kuniversal_module = 0, // 通用模块 + khbot_module = 1, // hbot模块 + kmotor_module = 2, // 电机控制 + ktemperature_ctrl_module = 3, // 温度控制 + kmini_servo_motor_module = 4, // 舵机 + kfan_ctrl_module = 5, // 风扇控制 } module_type_t; } \ No newline at end of file diff --git a/api/zi_module.hpp b/api/zi_module.hpp index f4d6d51..a2c9b96 100644 --- a/api/zi_module.hpp +++ b/api/zi_module.hpp @@ -42,7 +42,7 @@ using namespace std; PROCESS_REG(kreg_module_errorcode, /* */ REG_GET(m_com_reg.module_errorcode), ACTION_NONE); \ PROCESS_REG(kreg_module_initflag, /* */ REG_GET(m_com_reg.module_initflag), REG_SET(m_com_reg.module_initflag)); \ PROCESS_REG(kreg_module_errorbitflag0, /* */ REG_GET(m_com_reg.module_errorbitflag0), ACTION_NONE); \ - PROCESS_REG(kreg_module_enableflag, /* */ REG_GET(m_com_reg.module_enable), ACTION_NONE); \ + PROCESS_REG(kreg_module_enableflag, /* */ REG_GET(m_com_reg.module_enable), ACTION_NONE); \ PROCESS_REG(kreg_module_do_action0, /* */ ACTION_NONE, do_action(val)); \ PROCESS_REG(kreg_module_action_param1, /* */ REG_GET(m_com_reg.module_action_param1), REG_SET(m_com_reg.module_action_param1)); \ PROCESS_REG(kreg_module_action_param2, /* */ REG_GET(m_com_reg.module_action_param2), REG_SET(m_com_reg.module_action_param2)); \ @@ -122,8 +122,10 @@ class ZIModule { virtual int32_t module_enable(int32_t enable) { return err::koperation_not_support; } - virtual int32_t module_set_reg(int32_t param_id, int32_t param_value) { return err::koperation_not_support; } - virtual int32_t module_get_reg(int32_t param_id, int32_t *param_value) { return err::koperation_not_support; } + virtual int32_t module_xxx_reg(int32_t param_id, bool read, int32_t &val) { return err::koperation_not_support; } + + virtual int32_t module_set_reg(int32_t param_id, int32_t param_value) { return module_xxx_reg(param_id, false, param_value); } + virtual int32_t module_get_reg(int32_t param_id, int32_t *param_value) { return module_xxx_reg(param_id, true, *param_value); } 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; } @@ -173,5 +175,8 @@ class ZIModule { val = regval / precision; return 0; } + + public: + virtual int32_t do_action(int32_t actioncode) { return err::kmodule_not_support_action; }; }; } // namespace iflytop From 7018679ff3cd556a3132358a0366126900bd8bee Mon Sep 17 00:00:00 2001 From: zhaohe Date: Mon, 13 Nov 2023 21:43:21 +0800 Subject: [PATCH 3/4] update --- api/module_type_index.hpp | 1 + 1 file changed, 1 insertion(+) diff --git a/api/module_type_index.hpp b/api/module_type_index.hpp index b2798a4..0844f43 100644 --- a/api/module_type_index.hpp +++ b/api/module_type_index.hpp @@ -9,5 +9,6 @@ typedef enum { ktemperature_ctrl_module = 3, // 温度控制 kmini_servo_motor_module = 4, // 舵机 kfan_ctrl_module = 5, // 风扇控制 + kcode_scaner = 6, // 风扇控制 } module_type_t; } \ No newline at end of file From 49da2ad73b5d7685d324353d889c7327dfbca3db Mon Sep 17 00:00:00 2001 From: zhaohe Date: Mon, 13 Nov 2023 21:54:53 +0800 Subject: [PATCH 4/4] add zi_module --- api/zi_module.hpp | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/api/zi_module.hpp b/api/zi_module.hpp index a2c9b96..d8f93b2 100644 --- a/api/zi_module.hpp +++ b/api/zi_module.hpp @@ -40,7 +40,7 @@ using namespace std; PROCESS_REG(kreg_module_type, /* */ REG_GET(m_com_reg.module_type), ACTION_NONE); \ PROCESS_REG(kreg_module_status, /* */ module_get_status(&val), ACTION_NONE); \ PROCESS_REG(kreg_module_errorcode, /* */ REG_GET(m_com_reg.module_errorcode), ACTION_NONE); \ - PROCESS_REG(kreg_module_initflag, /* */ REG_GET(m_com_reg.module_initflag), REG_SET(m_com_reg.module_initflag)); \ + PROCESS_REG(kreg_module_initflag, /* */ module_get_inited_flag(&val), module_set_inited_flag(val)); \ PROCESS_REG(kreg_module_errorbitflag0, /* */ REG_GET(m_com_reg.module_errorbitflag0), ACTION_NONE); \ PROCESS_REG(kreg_module_enableflag, /* */ REG_GET(m_com_reg.module_enable), ACTION_NONE); \ PROCESS_REG(kreg_module_do_action0, /* */ ACTION_NONE, do_action(val)); \ @@ -60,7 +60,6 @@ typedef struct { int32_t module_version; int32_t module_type; int32_t module_errorcode; - int32_t module_initflag; int32_t module_errorbitflag0; int32_t module_enable; @@ -109,7 +108,7 @@ class ZIModule { return id; }; - virtual int32_t module_ping() = 0; + virtual int32_t module_ping() { return 0; }; virtual int32_t module_stop() { return err::koperation_not_support; } virtual int32_t module_break() { return err::koperation_not_support; }