From 43ad41b02e4137931f2e747c2f0bab90fca73d35 Mon Sep 17 00:00:00 2001 From: zhaohe Date: Thu, 8 Aug 2024 21:37:23 +0800 Subject: [PATCH] driver board is ok --- usrc/app_main.cpp | 4 +-- usrc/board/large_space_dm_power_ctrl_board.cpp | 10 ++----- usrc/board/liquid_ctrl_board.cpp | 12 ++++---- usrc/board/liquid_ctrl_board.hpp | 6 ++-- .../liquid_ctrl_board_cmd_processer.cpp | 34 +++++++++++----------- .../liquid_ctrl_board_cmd_processer.hpp | 6 ++-- 6 files changed, 34 insertions(+), 38 deletions(-) diff --git a/usrc/app_main.cpp b/usrc/app_main.cpp index b28775a..97b2ab0 100644 --- a/usrc/app_main.cpp +++ b/usrc/app_main.cpp @@ -94,8 +94,8 @@ void umain() { switch (PublicBoard::ins()->getBoardTypeId()) { case kLargeSpaceDMLiquidCtrlBoard: case kSmallSpaceDMLiquidCtrlBoard: - LiquidCtrlBoard::ins()->initialize(); - ProtocolProcesserMgr::ins()->regProcesser(LiquidCtrlBoardCmdProcesser::ins()); + LargeSpaceDmLiquidCtrlBoard::ins()->initialize(); + ProtocolProcesserMgr::ins()->regProcesser(LargeSpaceDmLiquidCtrlBoardPP::ins()); break; case kLargeSpaceDMPowerCtrlBoard: case kSmallSpaceDMPowerCtrlBoard: diff --git a/usrc/board/large_space_dm_power_ctrl_board.cpp b/usrc/board/large_space_dm_power_ctrl_board.cpp index 3b68443..d2c057d 100644 --- a/usrc/board/large_space_dm_power_ctrl_board.cpp +++ b/usrc/board/large_space_dm_power_ctrl_board.cpp @@ -5,20 +5,16 @@ using namespace iflytop; #define TAG "LSDMPowerCtrlBoard" -#define HEATER_CTRL_GPIO PC6 -#define HEATER_SAFE_CTRL_GPIO PC7 +#define HEATER_CTRL_GPIO PC7 #define HEATER_ELECTRIC_CURRENT_ADC_CH ADC_CHANNEL_2 #define HEATER_TEMPERATURE_ADC_CH ADC_CHANNEL_8 -#define BLOWER_CTRL_GPIO PC4 -#define BLOWER_SAFE_CTRL_GPIO PC5 +#define BLOWER_CTRL_GPIO PC5 #define BLOWER_ELECTRIC_CURRENT_ADC_CH ADC_CHANNEL_1 -#define AIRCOMPRESSOR_CTRL_GPIO PC2 -#define AIRCOMPRESSOR_SAFE_CTRL_GPIO PC3 +#define AIRCOMPRESSOR_CTRL_GPIO PC3 #define AIRCOMPRESSOR_ELECTRIC_CURRENT_ADC_CH ADC_CHANNEL_0 - /*********************************************************************************************************************** * EXT * ***********************************************************************************************************************/ diff --git a/usrc/board/liquid_ctrl_board.cpp b/usrc/board/liquid_ctrl_board.cpp index 02d5f75..66edb10 100644 --- a/usrc/board/liquid_ctrl_board.cpp +++ b/usrc/board/liquid_ctrl_board.cpp @@ -33,7 +33,7 @@ using namespace iflytop; * 配置END * ***********************************************************************************************************************/ -void LiquidCtrlBoard::motorSpiInit() { +void LargeSpaceDmLiquidCtrlBoard::motorSpiInit() { __HAL_RCC_SPI1_CLK_ENABLE(); __HAL_RCC_GPIOA_CLK_ENABLE(); GPIO_InitTypeDef GPIO_InitStruct = {0}; @@ -147,7 +147,7 @@ void MX_USART3_UART_Init(void) { HAL_NVIC_EnableIRQ(DMA1_Stream3_IRQn); } -void LiquidCtrlBoard::initialize() { +void LargeSpaceDmLiquidCtrlBoard::initialize() { motorSpiInit(); MX_USART3_UART_Init(); @@ -208,15 +208,15 @@ void LiquidCtrlBoard::initialize() { m_pressureSensorBus.init(&m_modbusBlockHost); } -int32_t LiquidCtrlBoard::motorNum() { return ZARRAY_SIZE(m_motor); } -TMC51X0* LiquidCtrlBoard::motor(int32_t index) { +int32_t LargeSpaceDmLiquidCtrlBoard::motorNum() { return ZARRAY_SIZE(m_motor); } +TMC51X0* LargeSpaceDmLiquidCtrlBoard::motor(int32_t index) { if (index < ZARRAY_SIZE(m_motor)) { return &m_motor[index]; } return nullptr; } -PXXPressureSensorBus* LiquidCtrlBoard::pressureSensorBus() { return &m_pressureSensorBus; } -void LiquidCtrlBoard::setRGB(int32_t r, int32_t g, int32_t b, int32_t beep) { +PXXPressureSensorBus* LargeSpaceDmLiquidCtrlBoard::pressureSensorBus() { return &m_pressureSensorBus; } +void LargeSpaceDmLiquidCtrlBoard::setRGB(int32_t r, int32_t g, int32_t b, int32_t beep) { if (r > 0) triLight_R.write(1); else diff --git a/usrc/board/liquid_ctrl_board.hpp b/usrc/board/liquid_ctrl_board.hpp index 4b6d789..64de142 100644 --- a/usrc/board/liquid_ctrl_board.hpp +++ b/usrc/board/liquid_ctrl_board.hpp @@ -12,7 +12,7 @@ #include "zsdk/zsdk.hpp" namespace iflytop { -class LiquidCtrlBoard { +class LargeSpaceDmLiquidCtrlBoard { public: ZGPIO m_evaporation_bin_water_sensor; // 蒸发仓水浸 ZGPIO m_device_bottom_water_sensor; // 设备底部水浸 @@ -29,8 +29,8 @@ class LiquidCtrlBoard { PXXPressureSensorBus m_pressureSensorBus; // PXX压力传感器总线 public: - static LiquidCtrlBoard* ins() { - static LiquidCtrlBoard instance; + static LargeSpaceDmLiquidCtrlBoard* ins() { + static LargeSpaceDmLiquidCtrlBoard instance; return &instance; } void initialize(); diff --git a/usrc/protocol_processer_impl/liquid_ctrl_board_cmd_processer.cpp b/usrc/protocol_processer_impl/liquid_ctrl_board_cmd_processer.cpp index 62c1f92..5d19e44 100644 --- a/usrc/protocol_processer_impl/liquid_ctrl_board_cmd_processer.cpp +++ b/usrc/protocol_processer_impl/liquid_ctrl_board_cmd_processer.cpp @@ -4,8 +4,8 @@ using namespace iflytop; #define TAG "LiquidCtrl" -#define ThisClass LiquidCtrlBoardCmdProcesser -#define DEVICE LiquidCtrlBoard::ins() +#define ThisClass LargeSpaceDmLiquidCtrlBoardPP +#define DEVICE LargeSpaceDmLiquidCtrlBoard::ins() /*********************************************************************************************************************** * 压力主动上报定时器 * @@ -78,7 +78,7 @@ static void onMotorMonitorTimer(void const* argument) { * LiquidCtrlBoardCmdProcesser * ***********************************************************************************************************************/ -void LiquidCtrlBoardCmdProcesser::initialize() { +void LargeSpaceDmLiquidCtrlBoardPP::initialize() { REG_FN(evaporation_tank_water_sensor_read_state); REG_FN(device_bottom_water_sensor_read_state); @@ -116,7 +116,7 @@ void LiquidCtrlBoardCmdProcesser::initialize() { return; \ } -void LiquidCtrlBoardCmdProcesser::pump_rotate(ProcessContext* cxt) { +void LargeSpaceDmLiquidCtrlBoardPP::pump_rotate(ProcessContext* cxt) { CHECK_PARAM_LEN(PRAAM_LEN(), 2); MOTOR_CHECK(); @@ -131,7 +131,7 @@ void LiquidCtrlBoardCmdProcesser::pump_rotate(ProcessContext* cxt) { zcanbus_send_ack(cxt->packet, NULL, 0); motorErrorFlag_set(GET_PARAM(0), false); } -void LiquidCtrlBoardCmdProcesser::pump_stop(ProcessContext* cxt) { +void LargeSpaceDmLiquidCtrlBoardPP::pump_stop(ProcessContext* cxt) { CHECK_PARAM_LEN(PRAAM_LEN(), 1); MOTOR_CHECK(); @@ -139,7 +139,7 @@ void LiquidCtrlBoardCmdProcesser::pump_stop(ProcessContext* cxt) { DEVICE->motor(GET_PARAM(0))->stop(); zcanbus_send_ack(cxt->packet, NULL, 0); } -void LiquidCtrlBoardCmdProcesser::pump_set_ihold_irun_idelay(ProcessContext* cxt) { +void LargeSpaceDmLiquidCtrlBoardPP::pump_set_ihold_irun_idelay(ProcessContext* cxt) { CHECK_PARAM_LEN(PRAAM_LEN(), 4); MOTOR_CHECK(); @@ -152,7 +152,7 @@ void LiquidCtrlBoardCmdProcesser::pump_set_ihold_irun_idelay(ProcessContext* cxt zcanbus_send_ack(cxt->packet, NULL, 0); } -void LiquidCtrlBoardCmdProcesser::pump_set_acc(ProcessContext* cxt) { +void LargeSpaceDmLiquidCtrlBoardPP::pump_set_acc(ProcessContext* cxt) { CHECK_PARAM_LEN(PRAAM_LEN(), 2); MOTOR_CHECK(); @@ -166,7 +166,7 @@ void LiquidCtrlBoardCmdProcesser::pump_set_acc(ProcessContext* cxt) { zcanbus_send_ack(cxt->packet, NULL, 0); } -void LiquidCtrlBoardCmdProcesser::pump_set_ramp(ProcessContext* cxt) { +void LargeSpaceDmLiquidCtrlBoardPP::pump_set_ramp(ProcessContext* cxt) { CHECK_PARAM_LEN(PRAAM_LEN(), 5); MOTOR_CHECK(); @@ -187,16 +187,16 @@ void LiquidCtrlBoardCmdProcesser::pump_set_ramp(ProcessContext* cxt) { DEVICE->motor(GET_PARAM(0))->setV1(v1); zcanbus_send_ack(cxt->packet, NULL, 0); } -void LiquidCtrlBoardCmdProcesser::pump_set_tzw(ProcessContext* cxt) {} +void LargeSpaceDmLiquidCtrlBoardPP::pump_set_tzw(ProcessContext* cxt) {} -void LiquidCtrlBoardCmdProcesser::pump_set_subic_reg(ProcessContext* cxt) { +void LargeSpaceDmLiquidCtrlBoardPP::pump_set_subic_reg(ProcessContext* cxt) { CHECK_PARAM_LEN(PRAAM_LEN(), 3); MOTOR_CHECK(); ZLOGI(TAG, "pump_set_subic_reg: %d %d %x", GET_PARAM(0), GET_PARAM(1), GET_PARAM(2)); DEVICE->motor(GET_PARAM(0))->writeIntExt(GET_PARAM(1), GET_PARAM(2)); zcanbus_send_ack(cxt->packet, NULL, 0); } -void LiquidCtrlBoardCmdProcesser::pump_get_subic_reg(ProcessContext* cxt) { +void LargeSpaceDmLiquidCtrlBoardPP::pump_get_subic_reg(ProcessContext* cxt) { CHECK_PARAM_LEN(PRAAM_LEN(), 2); MOTOR_CHECK(); int32_t val = DEVICE->motor(GET_PARAM(0))->readIntExt(GET_PARAM(1)); @@ -204,7 +204,7 @@ void LiquidCtrlBoardCmdProcesser::pump_get_subic_reg(ProcessContext* cxt) { zcanbus_send_ack(cxt->packet, (uint8_t*)&val, sizeof(val)); } -void LiquidCtrlBoardCmdProcesser::pump_ping(ProcessContext* cxt) { +void LargeSpaceDmLiquidCtrlBoardPP::pump_ping(ProcessContext* cxt) { CHECK_PARAM_LEN(PRAAM_LEN(), 1); MOTOR_CHECK(); zcanbus_send_ack(cxt->packet, NULL, 0); @@ -213,11 +213,11 @@ void LiquidCtrlBoardCmdProcesser::pump_ping(ProcessContext* cxt) { /*********************************************************************************************************************** * WS * ***********************************************************************************************************************/ -void LiquidCtrlBoardCmdProcesser::evaporation_tank_water_sensor_read_state(ProcessContext* cxt) { +void LargeSpaceDmLiquidCtrlBoardPP::evaporation_tank_water_sensor_read_state(ProcessContext* cxt) { int32_t val = DEVICE->m_evaporation_bin_water_sensor.read(); zcanbus_send_ack(cxt->packet, (uint8_t*)&val, sizeof(val)); } -void LiquidCtrlBoardCmdProcesser::device_bottom_water_sensor_read_state(ProcessContext* cxt) { +void LargeSpaceDmLiquidCtrlBoardPP::device_bottom_water_sensor_read_state(ProcessContext* cxt) { int32_t val = DEVICE->m_device_bottom_water_sensor.read(); zcanbus_send_ack(cxt->packet, (uint8_t*)&val, sizeof(val)); } @@ -225,7 +225,7 @@ void LiquidCtrlBoardCmdProcesser::device_bottom_water_sensor_read_state(ProcessC /*********************************************************************************************************************** * PRESSURE * ***********************************************************************************************************************/ -void LiquidCtrlBoardCmdProcesser::psbus_read_data(ProcessContext* cxt) { +void LargeSpaceDmLiquidCtrlBoardPP::psbus_read_data(ProcessContext* cxt) { CHECK_PARAM_LEN(PRAAM_LEN(), 1); int32_t index = GET_PARAM(0); @@ -241,7 +241,7 @@ void LiquidCtrlBoardCmdProcesser::psbus_read_data(ProcessContext* cxt) { zcanbus_send_errorack(cxt->packet, kerr_subdevice_offline); } } -void LiquidCtrlBoardCmdProcesser::psbus_scan(ProcessContext* cxt) { +void LargeSpaceDmLiquidCtrlBoardPP::psbus_scan(ProcessContext* cxt) { auto* sensors = DEVICE->pressureSensorBus()->sensors; int numSensor = DEVICE->pressureSensorBus()->sensorNum; @@ -256,7 +256,7 @@ void LiquidCtrlBoardCmdProcesser::psbus_scan(ProcessContext* cxt) { /*********************************************************************************************************************** * WARNING LIGHT * ***********************************************************************************************************************/ -void LiquidCtrlBoardCmdProcesser::triple_warning_light_ctl(ProcessContext* cxt) { +void LargeSpaceDmLiquidCtrlBoardPP::triple_warning_light_ctl(ProcessContext* cxt) { CHECK_PARAM_LEN(PRAAM_LEN(), 4); int32_t r = GET_PARAM(0); diff --git a/usrc/protocol_processer_impl/liquid_ctrl_board_cmd_processer.hpp b/usrc/protocol_processer_impl/liquid_ctrl_board_cmd_processer.hpp index 13506bd..6e74567 100644 --- a/usrc/protocol_processer_impl/liquid_ctrl_board_cmd_processer.hpp +++ b/usrc/protocol_processer_impl/liquid_ctrl_board_cmd_processer.hpp @@ -7,12 +7,12 @@ using namespace std; using namespace zscanprotocol; using namespace transmit_disfection_protocol; -class LiquidCtrlBoardCmdProcesser : public IProtocolProcesser { +class LargeSpaceDmLiquidCtrlBoardPP : public IProtocolProcesser { uint8_t boardResetFlag; // 0: 重启标志 public: - static LiquidCtrlBoardCmdProcesser* ins() { - static LiquidCtrlBoardCmdProcesser ins; + static LargeSpaceDmLiquidCtrlBoardPP* ins() { + static LargeSpaceDmLiquidCtrlBoardPP ins; return &ins; }