From 26d7ce5bf6c87e38c4d3cb9ae5a20ea3f88029ae Mon Sep 17 00:00:00 2001 From: lyq Date: Mon, 2 Feb 2026 13:19:41 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=AD=A3=E5=89=8D=E8=BF=9B=E5=90=8E?= =?UTF-8?q?=E9=80=80=E6=A1=A3=E4=BD=8D=E4=B8=8A=E6=8A=A5=E7=9B=B8=E5=8F=8D?= =?UTF-8?q?=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mqtt_report/src/can/can_decoder.cpp | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/src/communication/mqtt_report/src/can/can_decoder.cpp b/src/communication/mqtt_report/src/can/can_decoder.cpp index 71ff200..d4c9b0b 100644 --- a/src/communication/mqtt_report/src/can/can_decoder.cpp +++ b/src/communication/mqtt_report/src/can/can_decoder.cpp @@ -122,6 +122,20 @@ void CanDecoder::handle_mcu_status_2(const sweeperMsg::CanFrame& msg) int motorTemp = raw_motor_temp - 30; int feedback_gear = (ctrl_status >> 2) & 0x03; + switch (feedback_gear) + { + case 1: + feedback_gear = 2; // 原1(错误后退)改为2(正确后退) + break; + case 2: + feedback_gear = 1; // 原2(错误前进)改为1(正确前进) + break; + case 0: + case 3: + default: + break; + } + { std::lock_guard lock(ctx_.mtx); ctx_.info.controllerTemp = controllerTemp;