From 1ce597692f27122a9f907ad299f1aae51db1228a Mon Sep 17 00:00:00 2001 From: zhaohe Date: Wed, 21 Aug 2024 10:51:46 +0800 Subject: [PATCH] update --- .gitmodules | 30 +- .../transmit_disfection_protocol.cpp | 0 .../transmit_disfection_protocol.hpp | 389 --------------------- app_protocols/zscanprotocol/zscanprotocol.hpp | 59 ---- 4 files changed, 18 insertions(+), 460 deletions(-) delete mode 100644 app_protocols/transmit_disfection_protocol/transmit_disfection_protocol.cpp delete mode 100644 app_protocols/transmit_disfection_protocol/transmit_disfection_protocol.hpp delete mode 100644 app_protocols/zscanprotocol/zscanprotocol.hpp diff --git a/.gitmodules b/.gitmodules index df16fe6..7736c7d 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,18 +1,24 @@ +[submodule "transmit_disfection_protocol"] +path = app_protocols/transmit_disfection_protocol +url = zwsd@192.168.1.3:p_transmit_disinfection_v3/transmit_disfection_protocol.git +[submodule "app_protocols/zscanprotocol"] +path = app_protocols/zscanprotocol +url = zwsd@192.168.1.3:zprotocols/zscanprotocol.git [submodule "stm32components"] - path = stm32components - url = zwsd@192.168.1.3:zsdk_stm32_v1/stm32components.git +path = stm32components +url = zwsd@192.168.1.3:zsdk_stm32_v1/stm32components.git [submodule "stm32basic"] - path = stm32basic - url = zwsd@192.168.1.3:zsdk_stm32_v1/stm32basic.git +path = stm32basic +url = zwsd@192.168.1.3:zsdk_stm32_v1/stm32basic.git [submodule "stm32halport"] - path = stm32halport - url = zwsd@192.168.1.3:zsdk_stm32_v1/stm32halport.git +path = stm32halport +url = zwsd@192.168.1.3:zsdk_stm32_v1/stm32halport.git [submodule "Middlewares"] - path = Middlewares - url = zwsd@192.168.1.3:zsdk_stm32_v1/Middlewares.git +path = Middlewares +url = zwsd@192.168.1.3:zsdk_stm32_v1/Middlewares.git [submodule "Drivers"] - path = Drivers - url = zwsd@192.168.1.3:zsdk_stm32_v1/Drivers.git +path = Drivers +url = zwsd@192.168.1.3:zsdk_stm32_v1/Drivers.git [submodule "Core"] - path = Core - url = zwsd@192.168.1.3:zsdk_stm32_v1/Core.git +path = Core +url = zwsd@192.168.1.3:zsdk_stm32_v1/Core.git diff --git a/app_protocols/transmit_disfection_protocol/transmit_disfection_protocol.cpp b/app_protocols/transmit_disfection_protocol/transmit_disfection_protocol.cpp deleted file mode 100644 index e69de29..0000000 diff --git a/app_protocols/transmit_disfection_protocol/transmit_disfection_protocol.hpp b/app_protocols/transmit_disfection_protocol/transmit_disfection_protocol.hpp deleted file mode 100644 index 813de87..0000000 --- a/app_protocols/transmit_disfection_protocol/transmit_disfection_protocol.hpp +++ /dev/null @@ -1,389 +0,0 @@ -#pragma once -#include - -#include "zscanprotocol/zscanprotocol.hpp" -namespace iflytop { -namespace transmit_disfection_protocol { -using namespace zscanprotocol; - -#define PROTOCOL_VERSION 6 - - -typedef enum { - klarge_space_disinfection_machine = 1, // 大空间消毒机 - ksmall_space_disinfection_machine = 2, // 小空间消毒机 - kpipe_disinfection_machine = 3, // 管道式消毒机 - kdraw_bar_disinfection_box = 4, // 手持拉杆箱消毒机 - kh2o2_ext_sensor = 5, // 外部H2O2传感器 -} ProjID_t; - -typedef enum { - kLargeSpaceDMLiquidCtrlBoard = 1, // 大空间消毒机液路板 - kLargeSpaceDMPowerCtrlBoard = 2, // 大空间消毒机电源板 - kSmallSpaceDMLiquidCtrlBoard = 3, // 小空间消毒机液路板 - kSmallSpaceDMPowerCtrlBoard = 4, // 小空间消毒机电源板 - kPipeDMLiquidCtrlBoard = 5, // 管道式消毒机液路板 - kPipeDMPowerCtrlBoard = 6, // 管道式消毒机电源板 - kDrawBarDMLiquidCtrlBoard = 7, // 手持拉杆箱消毒机液路板 - kDrawBarDMPowerCtrlBoard = 8, // 手持拉杆箱消毒机电源板 - kDrawBarDMExtChSelector = 9, // 手持拉杆箱消毒机外部球阀控制板 - kH2O2SensorBoard = 10, // H2O2传感器板 -} BoardTypeId_t; - -typedef enum { - kFixBoardId_MainBoard = 1, // 主机 - kFixBoardId_LiquidCtrl = 2, // 液路板 - kFixBoardId_PowerControl = 3, // 电源板 - kFixBoardId_ExtChSelector = 4, // 外部球阀控制板 - kFixBoardId_H2O2SensorStart = 100, // H2O2传感器板 -} BoardId_t; - -static inline const char* BoardTypeId2Str(uint32_t id) { - switch (id) { - case kLargeSpaceDMLiquidCtrlBoard: - return "LargeSpaceDMLiquidCtrlBoard"; - case kLargeSpaceDMPowerCtrlBoard: - return "LargeSpaceDMPowerCtrlBoard"; - case kSmallSpaceDMLiquidCtrlBoard: - return "SmallSpaceDMLiquidCtrlBoard"; - case kSmallSpaceDMPowerCtrlBoard: - return "SmallSpaceDMPowerCtrlBoard"; - case kPipeDMLiquidCtrlBoard: - return "PipeDMLiquidCtrlBoard"; - case kPipeDMPowerCtrlBoard: - return "PipeDMPowerCtrlBoard"; - case kDrawBarDMLiquidCtrlBoard: - return "DrawBarDMLiquidCtrlBoard"; - case kDrawBarDMPowerCtrlBoard: - return "DrawBarDMPowerCtrlBoard"; - case kDrawBarDMExtChSelector: - return "kDrawBarDMExtChSelector"; - case kH2O2SensorBoard: - return "H2O2SensorBoard"; - default: - return "unkown"; - } -} - -static inline const char* ProjectIDToString(uint32_t id) { - switch (id) { - case klarge_space_disinfection_machine: - return "large_space_disinfection_machine"; - case ksmall_space_disinfection_machine: - return "small_space_disinfection_machine"; - case kpipe_disinfection_machine: - return "pipe_disinfection_machine"; - case kdraw_bar_disinfection_box: - return "draw_bar_disinfection_box"; - case kh2o2_ext_sensor: - return "h2o2_ext_sensor"; - default: - return "unkown"; - } -} - -typedef enum { - - // 驱动器错误 - kerr_motor_reset_error = 100, - kerr_motor_subdevice_offline = 101, - kerr_motor_driver_error = 102, - kerr_motor_undervoltage_error = 103, - kerr_motor_unkown_error = 104, - - kerr_motor_overtemperature_flag = 105, - kerr_motor_overtemperature_pre_warning_flag = 106, - kerr_motor_short_to_ground_indicator_phase_A = 107, - kerr_motor_short_to_ground_indicator_phase_B = 108, - kerr_motor_open_load_indicator_phase_A = 109, - kerr_motor_open_load_indicator_phase_B = 110, - kerr_motor_standstill_indicator = 111, - - kerr_AirBlowerError = 200, // 空压机异常 - kerr_HeaterError = 201, // 加热片异常 - kerr_BlowerError = 202, // 鼓风机异常 - kerr_ProportionalValveError = 203, // 气密性测试专用空压机异常 - -} ErrorCode_t; - -typedef enum { - - /*********************************************************************************************************************** - * 板子基本操作 * - ***********************************************************************************************************************/ - kfn_read_board_info = 1, // cmd:no, ack:ack_read_board_info_data_t - kfn_force_report = 2, // cmd:no, ack:none //!delete - kfn_read_sysinfo = 3, // cmd:no, ack:ack_sysinfo_t - kfn_read_taskinfo = 4, // cmd:taskoff, ack:ask_taskinfo_t - kfn_heart_ping = 5, // cmd:pingindex, ack:ask_taskinfo_t - kfn_clear_reset_flag = 6, // cmd:taskoff, ack:ask_taskinfo_t - kfn_enable_report = 7, // cmd:enable - kfn_reset_board = 8, // cmd: - kreport_heatpacket_pong = 50, // cmd:no ack:no report:heatpacket_t - kreport_exception_error = 51, // report:error_code,subid - - /*********************************************************************************************************************** - * 蠕动泵控制 * - ***********************************************************************************************************************/ - /** - * 旋转(id,速度) - * 停止 - * - * 设置TMC参数 - * 读取TMC参数 - * 设置ihold,irun,idelay - * - */ - kfn_pump_rotate = 100, // cmd: index rpm ack:none - kfn_pump_stop = 101, // cmd: index rpm ack:none - kfn_pump_set_ihold_irun_idelay = 102, // cmd: index irun,ihold,idelay ack:none - kfn_pump_set_acc = 104, // cmd: index acc ack:none , delete - kfn_pump_ping = 105, // cmd: index, ack:none - kfn_pump_set_ramp = 106, // cmd: index,vs,a1,amx,v1 ack:none - kfn_pump_set_tzw = 107, // cmd: index,timeZeroWait ack:none - kfn_pump_set_subic_reg = 110, // cmd: index,val ack:none - kfn_pump_get_subic_reg = 111, // cmd: index, ack:val - kfn_pump_is_run = 112, // cmd: index, ack:run - - /*********************************************************************************************************************** - * 加热片控制 * - ***********************************************************************************************************************/ - /** - * @brief 加热片控制 - * 打开/关闭 - * 安全继电器控制 - * 是否支持读取温度 - * - * 电流上报 - * 温度上报 - */ - kfn_heater_ctrl = 600, // cmd: power(0-100) - kfn_heater_ctrl_safe_valve = 601, // cmd: valve_state - kfn_heater_read_ei = 602, // report:electric_current(ma) - kfn_heater_read_temperature_data = 603, // report:temperature(0.01) - kfn_heater_read_ei_adc_raw = 604, // report:temperature(0.01) - kfn_heater_read_temperature_data_adc_raw = 605, // report:temperature(0.01) - kfn_heater_is_open = 606, // cmd: index, ack:open - - /*********************************************************************************************************************** - * H2O2传感器数值上报 * - ***********************************************************************************************************************/ - kfn_h2o2_sensor_read_calibration_date = 700, // cmd:subid ack:year,month,day - kfn_h2o2_sensor_read_sub_ic_errorcode = 701, // cmd:subid ack:errorcode - kfn_h2o2_sensor_read_sub_ic_reg = 702, // cmd:subid,reg,num ack:errorcode - kreport_h2o2_sensor_data = 750, // report:subid h2o2_sensor_data - - /*********************************************************************************************************************** - * 报警指示灯控制 * - ***********************************************************************************************************************/ - kfn_triple_warning_light_ctl = 800, // cmd: r,g,b,warning - kfn_triple_warning_light_read_state = 801, // cmd: none, ack:r,g,b,w - - /*********************************************************************************************************************** - * 水浸传感器 * - ***********************************************************************************************************************/ - kfn_evaporation_tank_water_sensor_read_state = 900, // cmd: state - kfn_device_bottom_water_sensor_read_state = 901, // cmd: state - kreport_evaporation_bin_water_sensor = 950, // report:state //蒸发仓水浸 //report_evaporation_bin_water_sensor_data_t - kreport_device_bottom_water_sensor = 951, // report:state //设备底部水浸 //report_device_bottom_water_sensor_data - - /*********************************************************************************************************************** - * 鼓风机控制 * - ***********************************************************************************************************************/ - kfn_blower_ctrl = 1000, // cmd: power(0-100) - kfn_blower_ctrl_safe_valve = 1001, // cmd: valve_state - kfn_blower_read_ei = 1002, // cmd: electric_current(ma) - kfn_blower_is_error = 1003, // cmd: ack:{error} - kfn_blower_read_ei_adc_raw = 1004, // cmd: electric_current(ma) - kfn_blower_is_open = 1005, // cmd: index, ack:open - - /*********************************************************************************************************************** - * 空压机 * - ***********************************************************************************************************************/ - kfn_air_compressor_ctrl = 1100, // cmd: power(0-100) - kfn_air_compressor_ctrl_safe_valve = 1101, // cmd: valve_state - kfn_air_compressor_read_ei = 1102, // report:electric_current(ma) - kfn_air_compressor_read_ei_adc_raw = 1103, // report:electric_current(ma) - kfn_air_compressor_is_open = 1104, // cmd: index, ack:open - - /*********************************************************************************************************************** - * 气密性测试空压机 * - ***********************************************************************************************************************/ - /** - * @brief air Tightness Test AirCompressor - * 打开/关闭 - * 电流上报 - */ - kfn_air_leak_detect_ac_ctrl = 1200, - kfn_air_leak_detect_ac_is_open = 1201, - - /*********************************************************************************************************************** - * 压力传感器数据上报 * - ***********************************************************************************************************************/ - kfn_psbus_read_data = 1300, // cmd:subid ack:pressure(0.1pa) - kfn_psbus_scan = 1302, // - kfn_psbus_start_report = 1303, // cmd:period - kfn_psbus_stop_report = 1304, // cmd: - kreport_pressure_data = 1350, // report:subid pressure(0.1pa) - - /*********************************************************************************************************************** - * 比例阀控制 * - ***********************************************************************************************************************/ - kfn_proportional_set_valve = 1400, // 设置比例阀 {4:valveId,4:valveValue} - kfn_proportional_read_pos = 1402, // - kfn_proportional_is_busy = 1403, // - - /*********************************************************************************************************************** - * 气密性测试 * - ***********************************************************************************************************************/ - kfn_air_leak_detect_test_set_mode = 1500, // 气密性测试-气密性测试模式 {1:mode} - kfn_air_tightness_test_get_mode = 1501, // 气密性测试-封闭通道 - - kfn_ext_ch_selector_set_ch = 1600, // 外部通道选择器设置通道 - kfn_ext_ch_selector_get_ch = 1601, // 读取当前通道 - -} cmd_t; - -#pragma pack(1) - -/*********************************************************************************************************************** - * CMD ENUM * - ***********************************************************************************************************************/ -typedef enum { - kext_ch_disinfection, - kext_ch_degradation, - kext_ch_dehumidification, -} ExtChType_t; - -/*********************************************************************************************************************** - * ACK * - ***********************************************************************************************************************/ -typedef struct { - uint16_t boardType; - uint16_t projectId; - uint16_t protcol_version; - uint16_t software_version; - uint16_t hardware_version; -} ack_read_board_info_data_t; - -typedef struct { - uint8_t taskName[8]; - uint16_t stackRemindSize; - uint16_t priority; - uint8_t state; -} ask_taskinfo_t; - -typedef struct { - uint32_t total_heap_size; - uint32_t free_heap_size; - uint32_t free_sys_heap_size; - uint16_t taskNum; - uint16_t sysHasRun; -} ack_sysinfo_t; - -static inline const char* PSType2Str(int type) { - switch (type) { - case 0: - return "P100"; - case 1: - return "DP600"; - case 2: - return "OTHERS"; - default: - return "UNKNOWN"; - } -} - -static inline const char* p100uint2Str(uint8_t uint) { - switch (uint) { - case 0: - return "Mpa"; - case 1: - return "kpa"; - case 2: - return "pa"; - case 3: - return "bar"; - case 4: - return "Mbar"; - case 5: - return "kgcm2"; - case 6: - return "psi"; - case 7: - return "mh2o"; - case 8: - return "mh2o"; - default: - return "UNKNOWN"; - } -} - -// ptype:P100 precision:1 unit:kpa zero:-900 full:1000 -typedef struct { - uint8_t isOnline; - uint8_t subid; - uint8_t ptype; - uint8_t uint; - uint8_t precision; - int16_t zero; - int16_t full; -} ps_info_t; - -typedef struct { - uint8_t numOnlineId; - ps_info_t sensor[10]; -} ack_psbus_scan_t; - -/*********************************************************************************************************************** - * Report * - ***********************************************************************************************************************/ - -typedef struct { - uint16_t heartIndex; - uint8_t boardType; - uint8_t flag; // 0:reset_flag -} report_heatpacket_data_t; - -typedef struct { - uint32_t ecode; - uint16_t subid; - uint32_t detailinfo; -} report_exeception_data_t; - -#if 1 -typedef struct { - uint8_t sensorDataNum; - struct { - uint8_t subid; - int16_t pressureVal; - } data[]; -} report_pressure_data_t; -#endif - -typedef struct { - uint8_t sensor_error; // 传感器异常 - uint16_t h2o2; // ppm * 10 - uint16_t humid; // %RH * 10 - uint16_t temp; // °C * 10 - uint16_t saturation; // %RS * 10 - uint16_t h2o2adc; // adc_val -} report_h2o2_data_t; - -typedef struct { - uint16_t temperature; // 0.01 -} report_heater_temperature_data_t; - -typedef struct { - uint16_t subid; // 0->100 - uint16_t valve_state; // 0->100 -} report_proportional_valve_value_data_t; - -typedef struct { - uint16_t state; -} report_water_sensor_state_t; - -#pragma pack() - -} // namespace transmit_disfection_protocol -} // namespace iflytop diff --git a/app_protocols/zscanprotocol/zscanprotocol.hpp b/app_protocols/zscanprotocol/zscanprotocol.hpp deleted file mode 100644 index f6398ab..0000000 --- a/app_protocols/zscanprotocol/zscanprotocol.hpp +++ /dev/null @@ -1,59 +0,0 @@ -#pragma once -#include - -namespace iflytop { -namespace zscanprotocol { - -#pragma pack(1) - -/** - * @brief 消息格式 12bit from,1bit emergency - * H L - * [1] [4bit] [8bit] [8bit] [4bit/4bit] - * , from to frameNum/frameId - */ - -// 数值越大优先级越低 - -typedef enum { - kcmd, - kreceipt, - kerror_receipt, - kreport, -} packet_type_t; - -typedef enum { - kpriority_emergency_report = 7, - kpriority_cmd = 8, - kpriority_receipt = 9, - kpriority_report = 10, -} priority_t; - -typedef struct { - uint8_t frameNumAndFrameId; - uint8_t to; - uint8_t from; - uint8_t pad; -} zcanid_t; - -typedef struct { - uint8_t ptype; - uint8_t index; - uint16_t function_id; - uint8_t params[]; -} zcanbus_packet_t; - -#pragma pack() - -} // namespace zscanprotocol -namespace err { -typedef enum { - kerr_noerror = 0, - kerr_overtime = 1, - kerr_invalid_param = 2, - kerr_invalid_param_num = 3, - kerr_subdevice_offline = 4, - kerr_function_not_support = 5, -} common_ecode_t; -} -} // namespace iflytop