diff --git a/.settings/language.settings.xml b/.settings/language.settings.xml index 89dd226..02e817d 100644 --- a/.settings/language.settings.xml +++ b/.settings/language.settings.xml @@ -5,7 +5,7 @@ - + @@ -16,7 +16,7 @@ - + diff --git a/.vscode/settings.json b/.vscode/settings.json index a8ffd81..7de1ea3 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -81,7 +81,8 @@ "common_hardware_init.h": "c", "public_service.h": "c", "stm32irq.h": "c", - "project_configs.h": "c" + "project_configs.h": "c", + "*.bak": "c" }, "files.autoGuessEncoding": false, "files.encoding": "utf8" diff --git a/app_protocols/transmit_disfection_protocol b/app_protocols/transmit_disfection_protocol index 1c51b0f..9836b9c 160000 --- a/app_protocols/transmit_disfection_protocol +++ b/app_protocols/transmit_disfection_protocol @@ -1 +1 @@ -Subproject commit 1c51b0f0e8b16dcca31ee69f6a46f5b630500556 +Subproject commit 9836b9c4356e8cf635be9ab8394d75c8fb301dfe diff --git a/app_protocols/zscanprotocol b/app_protocols/zscanprotocol index 94c49f6..d11d41c 160000 --- a/app_protocols/zscanprotocol +++ b/app_protocols/zscanprotocol @@ -1 +1 @@ -Subproject commit 94c49f650f508e64b9e30e733dbb161c72ae2559 +Subproject commit d11d41c1062568f629d5ec2bc6435319b7ea83e3 diff --git a/usrc/app/dmapp.cpp b/usrc/app/dmapp.cpp index e73bc71..ee0095f 100644 --- a/usrc/app/dmapp.cpp +++ b/usrc/app/dmapp.cpp @@ -29,67 +29,61 @@ const char* DisinfectionApp::getName() { return "DisinfectionApp"; } void DisinfectionApp::initialize() { int btid = PublicBoard::ins()->getBoardTypeId(); - // - - // 加热片 - if (isBoardType(kLargeSpaceDMPowerCtrlBoard, kSmallSpaceDMPowerCtrlBoard, kPipeDMPowerCtrlBoard)) { + // only support + // large space disinfection machine, + // small space disinfection machine, + // pipe disinfection machine, + ZASSERT(PORT::isLargeSpaceDM() || PORT::isSamllSpaceDM() || PORT::isPipeDM()); + + /*********************************************************************************************************************** + * 加热片 * + ***********************************************************************************************************************/ + if (PORT::isPowerCtrlBoard() && (PORT::isLargeSpaceDM() || PORT::isSamllSpaceDM() || PORT::isPipeDM())) { LargeSpaceDmPowerCtrlBoardHal::HADC1_INIT(); heaterCtrler.initialize(PC7, &hadc1, ADC_CHANNEL_2, &hadc1, ADC_CHANNEL_4); - } else if (isBoardType(kDrawBarDMPowerCtrlBoard)) { - LargeSpaceDmPowerCtrlBoardHal::HADC1_INIT(); - heaterCtrler.initialize(PC7, NULL, 0, &hadc1, ADC_CHANNEL_1); } - // 风机 - if (isBoardType(kLargeSpaceDMPowerCtrlBoard, kSmallSpaceDMPowerCtrlBoard)) { + /*********************************************************************************************************************** + * 风机 * + ***********************************************************************************************************************/ + if (PORT::isPowerCtrlBoard() && (PORT::isLargeSpaceDM() || PORT::isSamllSpaceDM())) { LargeSpaceDmPowerCtrlBoardHal::HADC1_INIT(); blowerCtrler.initialize(PC5, &hadc1, ADC_CHANNEL_1); - } else if (isBoardType(kPipeDMPowerCtrlBoard)) { + } // + else if (PORT::isPowerCtrlBoard() && (PORT::isPipeDM())) { LargeSpaceDmPowerCtrlBoardHal::HADC1_INIT(); LargeSpaceDmPowerCtrlBoardHal::HUART2_INIT(9600, UART_STOPBITS_1); blowerCtrler.initializeAsHighPowerUartBlower(&huart2, &hadc1, ADC_CHANNEL_1); - } else if (isBoardType(kDrawBarDMPowerCtrlBoard)) { - DBDMPowerCtrlBoard::HTIM3_INIT(); - blowerCtrler.initializeAsMiniPwmBlower(&htim3, TIM_CHANNEL_3, PC6 /*en*/, PC9 /*fb*/); } - // 空压机 - if (isBoardType(kLargeSpaceDMPowerCtrlBoard, kSmallSpaceDMPowerCtrlBoard, kPipeDMPowerCtrlBoard)) { + /*********************************************************************************************************************** + * 空压机 * + ***********************************************************************************************************************/ + if (PORT::isPowerCtrlBoard() && (PORT::isLargeSpaceDM() || PORT::isSamllSpaceDM() || PORT::isPipeDM())) { LargeSpaceDmPowerCtrlBoardHal::HADC1_INIT(); airComCtrler.initialize(PC3, &hadc1, ADC_CHANNEL_0); - } else if (isBoardType(kDrawBarDMLiquidCtrlBoard)) { - airComCtrler.initialize(PD14, NULL, 0); } - // 气密性测试空压机 - // kfn_air_tightness_test_ac_ctrl - if (isBoardType(kPipeDMPowerCtrlBoard)) { - REG_LAMADA_FN(kfn_air_tightness_test_ac_ctrl, [&](ProcessContext* cxt) { - airComCtrler.open(GET_PARAM(0)); - zcanbus_send_ack(cxt->packet, NULL, 0); - }); - REG_LAMADA_FN(kfn_air_tightness_test_ac_is_open, [&](ProcessContext* cxt) { zcanbus_send_ack(cxt->packet, airComCtrler.isOpen()); }); - - } else if (isBoardType(kDrawBarDMLiquidCtrlBoard)) { - static ZGPIO airCompressorCtrlGpio; - airCompressorCtrlGpio.initAsOutput(PD15, kxs_gpio_nopull, true, false); - REG_LAMADA_FN(kfn_air_tightness_test_ac_ctrl, [&](ProcessContext* cxt) { - airCompressorCtrlGpio.write(GET_PARAM(0)); - zcanbus_send_ack(cxt->packet, NULL, 0); - }); - REG_LAMADA_FN(kfn_air_tightness_test_ac_is_open, [&](ProcessContext* cxt) { zcanbus_send_ack(cxt->packet, airCompressorCtrlGpio.read()); }); - } + /*********************************************************************************************************************** + * 气密性测试空压机 * + ***********************************************************************************************************************/ + // null - // H2O2传感器 - if (isBoardType(kLargeSpaceDMPowerCtrlBoard, kSmallSpaceDMPowerCtrlBoard, kPipeDMPowerCtrlBoard, kDrawBarDMPowerCtrlBoard)) { + // + /*********************************************************************************************************************** + * H2O2传感器 * + ***********************************************************************************************************************/ + if (PORT::isPowerCtrlBoard() && (PORT::isLargeSpaceDM() || PORT::isSamllSpaceDM() || PORT::isPipeDM())) { LargeSpaceDmPowerCtrlBoardHal::HUART3_INIT(19200, UART_STOPBITS_2); LargeSpaceDmPowerCtrlBoardHal::HADC1_INIT(); osDelay(3000); h2o2Sensor.initialize(&huart3, &hadc1, ADC_CHANNEL_3); } - // 水浸传感器 - if (isBoardType(kLargeSpaceDMLiquidCtrlBoard, kSmallSpaceDMLiquidCtrlBoard, kPipeDMLiquidCtrlBoard)) { + /*********************************************************************************************************************** + * 水浸传感器 * + ***********************************************************************************************************************/ + if (PORT::isLiquidCtrlBoard() && (PORT::isLargeSpaceDM() || PORT::isSamllSpaceDM() || PORT::isPipeDM())) { ZLOGI(TAG, "WaterSensor init"); evaporationBinWS.initAsInput(PC7, kxs_gpio_nopull, kxs_gpio_no_irq, true /*mirror*/); deviceBottomWS.initAsInput(PC8, kxs_gpio_nopull, kxs_gpio_no_irq, true /*mirror*/); @@ -98,36 +92,47 @@ void DisinfectionApp::initialize() { REG_LAMADA_FN(kfn_evaporation_tank_water_sensor_read_state, [&](ProcessContext* cxt) { zcanbus_send_ack(cxt->packet, evaporationBinWS.read()); }); } - if (isBoardType(kLargeSpaceDMLiquidCtrlBoard, kSmallSpaceDMLiquidCtrlBoard, kPipeDMLiquidCtrlBoard, kDrawBarDMLiquidCtrlBoard)) { + /*********************************************************************************************************************** + * TMC电机初始化 * + ***********************************************************************************************************************/ + if (PORT::isLiquidCtrlBoard() && (PORT::isLargeSpaceDM() || PORT::isSamllSpaceDM() || PORT::isPipeDM())) { // TMC电机初始化 ZLOGI(TAG, "TMCMotorGroup init"); LargeSpaceDMLiquidCtrlBoardHal::HSPI1_INIT(); tmcPowerGroup.initialize(PB2, {&hspi1, PA4 /*cs*/, PB12 /*en*/}, {&hspi1, PC4 /*cs*/, PB13 /*en*/}); } - // 三色指示灯 - if (isBoardType(kLargeSpaceDMLiquidCtrlBoard, kSmallSpaceDMLiquidCtrlBoard, kPipeDMLiquidCtrlBoard)) { + /*********************************************************************************************************************** + * 三色指示灯 * + ***********************************************************************************************************************/ + if (PORT::isLiquidCtrlBoard() && (PORT::isLargeSpaceDM() || PORT::isSamllSpaceDM() || PORT::isPipeDM())) { // 三色指示灯初始化 ZLOGI(TAG, "WarningLightDriver init"); wlDriver.initialize(PD8, PD7, PD9, PD10); } - // 压力传感器初始化 - if (isBoardType(kLargeSpaceDMLiquidCtrlBoard, kSmallSpaceDMLiquidCtrlBoard, kPipeDMLiquidCtrlBoard, kDrawBarDMLiquidCtrlBoard)) { + /*********************************************************************************************************************** + * 压力传感器初始化 * + ***********************************************************************************************************************/ + if (PORT::isLiquidCtrlBoard() && (PORT::isLargeSpaceDM() || PORT::isSamllSpaceDM() || PORT::isPipeDM())) { ZLOGI(TAG, "PXXPSBus init"); osDelay(1500); // 等待传感器上电 LargeSpaceDMLiquidCtrlBoardHal::HUART3_INIT(9600, UART_STOPBITS_1); psBus.initialize(&huart3); } - // 比例阀初始化 - if (isBoardType(kPipeDMLiquidCtrlBoard)) { + /*********************************************************************************************************************** + * 比例阀初始化 * + ***********************************************************************************************************************/ + if (PORT::isLiquidCtrlBoard() && (PORT::isPipeDM())) { ZLOGI(TAG, "ProportionalValveCtrl init"); LargeSpaceDMLiquidCtrlBoardHal::HUART2_INIT(9600); proportionalValveCtrl.initialize(&huart2); } - // 气密性测试通道 - if (isBoardType(kPipeDMLiquidCtrlBoard)) { + /*********************************************************************************************************************** + * 气密性测试通道 * + ***********************************************************************************************************************/ + if (PORT::isLiquidCtrlBoard() && (PORT::isPipeDM())) { static ZGPIO airTightnessTestChGpio; static ZGPIO eValve; static bool state = false; diff --git a/usrc/app/dmapp.cpp.bak b/usrc/app/dmapp.cpp.bak new file mode 100644 index 0000000..3ed75c6 --- /dev/null +++ b/usrc/app/dmapp.cpp.bak @@ -0,0 +1,163 @@ +#include "dmapp.hpp" + +/** + * @brief + * 小空间和大空间硬件一样 + * 管道式----- + * 液路控制板 + * 相比于大空间消毒机,不同的点: + * 1.增加比例阀控制 + * 2.空压机通道控制 + * 功率板 + * 相比于大空间消毒机,不同的点: + * 1. 风机改成鼓风机(可控风速) + * 拉杆箱------ + * 液路控制板 + * 功率板 + */ + +using namespace iflytop; +using namespace transmit_disfection_protocol; +#define TAG "DMAPP" + +DisinfectionApp* DisinfectionApp::ins() { + static DisinfectionApp instance; + return &instance; +} + +const char* DisinfectionApp::getName() { return "DisinfectionApp"; } + +void DisinfectionApp::initialize() { + int btid = PublicBoard::ins()->getBoardTypeId(); + // only support + // large space disinfection machine, + // small space disinfection machine, + // pipe disinfection machine, + ZASSERT(PORT::isLargeSpaceDM() || PORT::isLargeSpaceDM() || PORT::isPipeDM()); + + // 加热片 + if (PORT::isPowerCtrlBoard()) { + LargeSpaceDmPowerCtrlBoardHal::HADC1_INIT(); + heaterCtrler.initialize(PC7, &hadc1, ADC_CHANNEL_2, &hadc1, ADC_CHANNEL_4); + } + + if (isBoardType(kLargeSpaceDMPowerCtrlBoard, kSmallSpaceDMPowerCtrlBoard, kPipeDMPowerCtrlBoard)) { + } else if (isBoardType(kDrawBarDMPowerCtrlBoard)) { + LargeSpaceDmPowerCtrlBoardHal::HADC1_INIT(); + heaterCtrler.initialize(PC7, NULL, 0, &hadc1, ADC_CHANNEL_1); + } + + // 风机 + if (isBoardType(kLargeSpaceDMPowerCtrlBoard, kSmallSpaceDMPowerCtrlBoard)) { + LargeSpaceDmPowerCtrlBoardHal::HADC1_INIT(); + blowerCtrler.initialize(PC5, &hadc1, ADC_CHANNEL_1); + } else if (isBoardType(kPipeDMPowerCtrlBoard)) { + LargeSpaceDmPowerCtrlBoardHal::HADC1_INIT(); + LargeSpaceDmPowerCtrlBoardHal::HUART2_INIT(9600, UART_STOPBITS_1); + blowerCtrler.initializeAsHighPowerUartBlower(&huart2, &hadc1, ADC_CHANNEL_1); + } else if (isBoardType(kDrawBarDMPowerCtrlBoard)) { + DBDMPowerCtrlBoard::HTIM3_INIT(); + blowerCtrler.initializeAsMiniPwmBlower(&htim3, TIM_CHANNEL_3, PC6 /*en*/, PC9 /*fb*/); + } + + // 空压机 + if (isBoardType(kLargeSpaceDMPowerCtrlBoard, kSmallSpaceDMPowerCtrlBoard, kPipeDMPowerCtrlBoard)) { + LargeSpaceDmPowerCtrlBoardHal::HADC1_INIT(); + airComCtrler.initialize(PC3, &hadc1, ADC_CHANNEL_0); + } else if (isBoardType(kDrawBarDMLiquidCtrlBoard)) { + airComCtrler.initialize(PD14, NULL, 0); + } + + // 气密性测试空压机 + // kfn_air_tightness_test_ac_ctrl + if (isBoardType(kPipeDMPowerCtrlBoard)) { + REG_LAMADA_FN(kfn_air_tightness_test_ac_ctrl, [&](ProcessContext* cxt) { + airComCtrler.open(GET_PARAM(0)); + zcanbus_send_ack(cxt->packet, NULL, 0); + }); + REG_LAMADA_FN(kfn_air_tightness_test_ac_is_open, [&](ProcessContext* cxt) { zcanbus_send_ack(cxt->packet, airComCtrler.isOpen()); }); + + } else if (isBoardType(kDrawBarDMLiquidCtrlBoard)) { + static ZGPIO airCompressorCtrlGpio; + airCompressorCtrlGpio.initAsOutput(PD15, kxs_gpio_nopull, true, false); + REG_LAMADA_FN(kfn_air_tightness_test_ac_ctrl, [&](ProcessContext* cxt) { + airCompressorCtrlGpio.write(GET_PARAM(0)); + zcanbus_send_ack(cxt->packet, NULL, 0); + }); + REG_LAMADA_FN(kfn_air_tightness_test_ac_is_open, [&](ProcessContext* cxt) { zcanbus_send_ack(cxt->packet, airCompressorCtrlGpio.read()); }); + } + + // H2O2传感器 + if (isBoardType(kLargeSpaceDMPowerCtrlBoard, kSmallSpaceDMPowerCtrlBoard, kPipeDMPowerCtrlBoard, kDrawBarDMPowerCtrlBoard)) { + LargeSpaceDmPowerCtrlBoardHal::HUART3_INIT(19200, UART_STOPBITS_2); + LargeSpaceDmPowerCtrlBoardHal::HADC1_INIT(); + osDelay(3000); + h2o2Sensor.initialize(&huart3, &hadc1, ADC_CHANNEL_3); + } + + // 水浸传感器 + if (isBoardType(kLargeSpaceDMLiquidCtrlBoard, kSmallSpaceDMLiquidCtrlBoard, kPipeDMLiquidCtrlBoard)) { + ZLOGI(TAG, "WaterSensor init"); + evaporationBinWS.initAsInput(PC7, kxs_gpio_nopull, kxs_gpio_no_irq, true /*mirror*/); + deviceBottomWS.initAsInput(PC8, kxs_gpio_nopull, kxs_gpio_no_irq, true /*mirror*/); + + REG_LAMADA_FN(kfn_device_bottom_water_sensor_read_state, [&](ProcessContext* cxt) { zcanbus_send_ack(cxt->packet, deviceBottomWS.read()); }); + REG_LAMADA_FN(kfn_evaporation_tank_water_sensor_read_state, [&](ProcessContext* cxt) { zcanbus_send_ack(cxt->packet, evaporationBinWS.read()); }); + } + + if (isBoardType(kLargeSpaceDMLiquidCtrlBoard, kSmallSpaceDMLiquidCtrlBoard, kPipeDMLiquidCtrlBoard, kDrawBarDMLiquidCtrlBoard)) { + // TMC电机初始化 + ZLOGI(TAG, "TMCMotorGroup init"); + LargeSpaceDMLiquidCtrlBoardHal::HSPI1_INIT(); + tmcPowerGroup.initialize(PB2, {&hspi1, PA4 /*cs*/, PB12 /*en*/}, {&hspi1, PC4 /*cs*/, PB13 /*en*/}); + } + + // 三色指示灯 + if (isBoardType(kLargeSpaceDMLiquidCtrlBoard, kSmallSpaceDMLiquidCtrlBoard, kPipeDMLiquidCtrlBoard)) { + // 三色指示灯初始化 + ZLOGI(TAG, "WarningLightDriver init"); + wlDriver.initialize(PD8, PD7, PD9, PD10); + } + + // 压力传感器初始化 + if (isBoardType(kLargeSpaceDMLiquidCtrlBoard, kSmallSpaceDMLiquidCtrlBoard, kPipeDMLiquidCtrlBoard, kDrawBarDMLiquidCtrlBoard)) { + ZLOGI(TAG, "PXXPSBus init"); + osDelay(1500); // 等待传感器上电 + LargeSpaceDMLiquidCtrlBoardHal::HUART3_INIT(9600, UART_STOPBITS_1); + psBus.initialize(&huart3); + } + // 比例阀初始化 + if (isBoardType(kPipeDMLiquidCtrlBoard)) { + ZLOGI(TAG, "ProportionalValveCtrl init"); + LargeSpaceDMLiquidCtrlBoardHal::HUART2_INIT(9600); + proportionalValveCtrl.initialize(&huart2); + } + + // 气密性测试通道 + if (isBoardType(kPipeDMLiquidCtrlBoard)) { + static ZGPIO airTightnessTestChGpio; + static ZGPIO eValve; + static bool state = false; + airTightnessTestChGpio.initAsOutput(PD15, kxs_gpio_nopull, true, false); + eValve.initAsOutput(PD14, kxs_gpio_nopull, false, true); + + REG_LAMADA_FN(kfn_air_tightness_test_cutoff_ch, [&](ProcessContext* cxt) { + airTightnessTestChGpio.write(1); // 内管路,气密性测试 + eValve.write(0); // 电磁阀闭合 + state = true; + zcanbus_send_ack(cxt->packet, NULL, 0); + }); + REG_LAMADA_FN(kfn_air_tightness_test_release_ch, [&](ProcessContext* cxt) { + airTightnessTestChGpio.write(0); // 连接空气 + eValve.write(1); // 电磁阀打开 + state = false; + zcanbus_send_ack(cxt->packet, NULL, 0); + }); + // kfn_air_tightness_test_is_cutoff + REG_LAMADA_FN(kfn_air_tightness_test_is_cutoff, [&](ProcessContext* cxt) { zcanbus_send_ack(cxt->packet, state); }); + } +} + +/*********************************************************************************************************************** + * PROTOCOL_BIND * + ***********************************************************************************************************************/ diff --git a/usrc/app_main.cpp b/usrc/app_main.cpp index 065b3e0..2dd1589 100644 --- a/usrc/app_main.cpp +++ b/usrc/app_main.cpp @@ -97,14 +97,18 @@ void umain() { PublicCmdProcesser::ins()->initialize(); switch (PublicBoard::ins()->getBoardTypeId()) { + case kDrawBarDMLiquidCtrlBoard: + case kDrawBarDMPowerCtrlBoard: + // not suppport now + gInitErrorFlag = true; + break; case kLargeSpaceDMLiquidCtrlBoard: case kLargeSpaceDMPowerCtrlBoard: case kSmallSpaceDMLiquidCtrlBoard: case kSmallSpaceDMPowerCtrlBoard: case kPipeDMLiquidCtrlBoard: case kPipeDMPowerCtrlBoard: - case kDrawBarDMLiquidCtrlBoard: - case kDrawBarDMPowerCtrlBoard: + DisinfectionApp::ins()->initialize(); break; case kDrawBarDMExtChSelector: diff --git a/usrc/base/protocol_processer_mgr.cpp b/usrc/base/protocol_processer_mgr.cpp index c0c2193..2f8970f 100644 --- a/usrc/base/protocol_processer_mgr.cpp +++ b/usrc/base/protocol_processer_mgr.cpp @@ -58,7 +58,7 @@ void ProtocolProcesserMgr::onPacket(uint8_t from, uint8_t to, uint8_t* rawpacket if (!processed) { ZLOGW(TAG, "no processer support this packet"); - zcanbus_send_errorack(packet, kerr_function_not_support); + zcanbus_send_errorack(packet, err::kerr_function_not_support); } ZLOGI(TAG, "process end"); } diff --git a/usrc/base/protocol_processer_utils.hpp b/usrc/base/protocol_processer_utils.hpp index 46a0dcf..a1fefc3 100644 --- a/usrc/base/protocol_processer_utils.hpp +++ b/usrc/base/protocol_processer_utils.hpp @@ -20,7 +20,7 @@ using namespace transmit_disfection_protocol; #define CHECK_PARAM_LEN(_paramNum, expectNum) \ if (_paramNum != expectNum) { \ - zcanbus_send_errorack(cxt->packet, kerr_invalid_param_num); \ + zcanbus_send_errorack(cxt->packet, err::kerr_invalid_param_num); \ return; \ } diff --git a/usrc/board/public_board.cpp b/usrc/board/public_board.cpp index f312061..45a50b1 100644 --- a/usrc/board/public_board.cpp +++ b/usrc/board/public_board.cpp @@ -141,6 +141,32 @@ int PublicBoard::getBoardId() { return IdMgr::ins().getBoardId(getBoardTypeId()) + boardIdoff; } +bool PORT::isLargeSpaceDM() { return PublicBoard::ins()->getProjId() == klarge_space_disinfection_machine; } +bool PORT::isSamllSpaceDM() { return PublicBoard::ins()->getProjId() == ksmall_space_disinfection_machine; } +bool PORT::isPipeDM() { return PublicBoard::ins()->getProjId() == kpipe_disinfection_machine; } +bool PORT::isDrawBarDM() { return PublicBoard::ins()->getProjId() == kdraw_bar_disinfection_box; } +bool PORT::isH2O2Sensor() { return PublicBoard::ins()->getProjId() == kh2o2_ext_sensor; } +bool PORT::isLiquidCtrlBoard() { + if (PublicBoard::ins()->getBoardTypeId() == kLargeSpaceDMLiquidCtrlBoard || // + PublicBoard::ins()->getBoardTypeId() == kSmallSpaceDMLiquidCtrlBoard || // + PublicBoard::ins()->getBoardTypeId() == kPipeDMLiquidCtrlBoard || // + PublicBoard::ins()->getBoardTypeId() == kDrawBarDMLiquidCtrlBoard) { + return true; + } + return false; +} +bool PORT::isPowerCtrlBoard() { + if (PublicBoard::ins()->getBoardTypeId() == kLargeSpaceDMPowerCtrlBoard || // + PublicBoard::ins()->getBoardTypeId() == kSmallSpaceDMPowerCtrlBoard || // + PublicBoard::ins()->getBoardTypeId() == kPipeDMPowerCtrlBoard || // + PublicBoard::ins()->getBoardTypeId() == kDrawBarDMPowerCtrlBoard) { + return true; + } + return false; +} + + + namespace iflytop { bool isBoardType(int32_t val0) { int boardType = PublicBoard::ins()->getBoardTypeId(); diff --git a/usrc/board/public_board.hpp b/usrc/board/public_board.hpp index 83a0933..9b0422a 100644 --- a/usrc/board/public_board.hpp +++ b/usrc/board/public_board.hpp @@ -28,4 +28,22 @@ bool isBoardType(int32_t val0, int32_t val1); bool isBoardType(int32_t val0, int32_t val1, int32_t val2); bool isBoardType(int32_t val0, int32_t val1, int32_t val2, int32_t val3); +// klarge_space_disinfection_machine = 1, // 大空间消毒机 +// ksmall_space_disinfection_machine = 2, // 小空间消毒机 +// kpipe_disinfection_machine = 3, // 管道式消毒机 +// kdraw_bar_disinfection_box = 4, // 手持拉杆箱消毒机 +// kh2o2_ext_sensor = 5, // 外部H2O2传感器 + +class PORT { + public: + static bool isLargeSpaceDM(); + static bool isSamllSpaceDM(); + static bool isPipeDM(); + static bool isDrawBarDM(); + static bool isH2O2Sensor(); + + static bool isLiquidCtrlBoard(); + static bool isPowerCtrlBoard(); +}; + } // namespace iflytop \ No newline at end of file diff --git a/usrc/module/pxxpsbus.hpp b/usrc/module/pxxpsbus.hpp index 69db7ae..fef4797 100644 --- a/usrc/module/pxxpsbus.hpp +++ b/usrc/module/pxxpsbus.hpp @@ -3,7 +3,8 @@ namespace iflytop { using namespace transmit_disfection_protocol; - +using namespace zscanprotocol; +using namespace err; class PXXPSBus { PXXPressureSensorBus psbus; bool m_isInitialized = false; diff --git a/usrc/module/tmc_motor_group.cpp b/usrc/module/tmc_motor_group.cpp index c4bcbc3..bf2a2c8 100644 --- a/usrc/module/tmc_motor_group.cpp +++ b/usrc/module/tmc_motor_group.cpp @@ -1,6 +1,9 @@ #include "tmc_motor_group.hpp" using namespace iflytop; #define TAG "TmcMotorGroup" +using namespace transmit_disfection_protocol; +using namespace zscanprotocol; +using namespace err; /*********************************************************************************************************************** * 电机异常监控 * diff --git a/zsdk b/zsdk index 50565f2..2ec58da 160000 --- a/zsdk +++ b/zsdk @@ -1 +1 @@ -Subproject commit 50565f27ea3e0128518c920d6aa8c98e299e1e54 +Subproject commit 2ec58da3d9802e851e67149e3801f7fa6607621d