From 39232ddcd4c5be4f400b9d4fc724fc0b16744516 Mon Sep 17 00:00:00 2001 From: helei Date: Sun, 13 Sep 2026 21:00:07 +0800 Subject: [PATCH] =?UTF-8?q?=E4=B8=BB=E6=9D=BFsw2=E5=8F=8D=E9=A6=88?= =?UTF-8?q?=E5=A4=B1=E8=B4=A5=E5=BA=94=E7=AD=94=E6=94=B9=E4=B8=AD=E6=96=87?= =?UTF-8?q?(=E8=B4=9F=E8=BD=BD=E6=96=AD=E5=BC=80=E6=88=96=E7=BB=A7?= =?UTF-8?q?=E7=94=B5=E5=99=A8=E6=8D=9F=E5=9D=8F,UTF-8=E5=AD=97=E8=8A=82),?= =?UTF-8?q?=E5=85=B6=E4=BD=99=E8=B7=AF=E5=8F=8A=E6=89=A9=E5=B1=95=E6=9D=BF?= =?UTF-8?q?=E4=BF=9D=E6=8C=81=E8=8B=B1=E6=96=87=E5=BE=85=E6=B5=8B=E8=AF=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- STM32F103_App1/HardWare/RELAY/ext_relay.c | 2 +- STM32F103_App1/HardWare/RELAY/relay.c | 6 ++++-- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/STM32F103_App1/HardWare/RELAY/ext_relay.c b/STM32F103_App1/HardWare/RELAY/ext_relay.c index fd24f91..c3b2831 100644 --- a/STM32F103_App1/HardWare/RELAY/ext_relay.c +++ b/STM32F103_App1/HardWare/RELAY/ext_relay.c @@ -378,7 +378,7 @@ void ext_relay_process(void) log_warn("> EXT: SW%d %s未生效 (输出=%02X 反馈=%02X 故障=%02X, 命令前输出=%d 反馈=%d)", cmd_ch + 4, cmd_on ? "开" : "关", s_state, s_fb, s_fault, cmd_state_before, cmd_fb_before); - ext_respond(0, "\xE8\xB4\x9F\xE8\xBD\xBD\xE6\x96\xAD\xE5\xBC\x80\xE6\x88\x96\xE7\xBB\xA7\xE7\x94\xB5\xE5\x99\xA8\xE6\x8D\x9F\xE5\x9D\x8F"); /* 负载断开或继电器损坏(UTF-8 字节转义, 绕开源码 GBK; 平台乱码则改 GBK 字节) */ + ext_respond(0, "Load unpowered / relay failure !"); /* 与板载失败文案一致 */ } cmd_txn = TXN_NONE; ext_save_state(); /* 断电记忆: 以实际输出状态落盘 */ diff --git a/STM32F103_App1/HardWare/RELAY/relay.c b/STM32F103_App1/HardWare/RELAY/relay.c index 49fae19..c8859b6 100644 --- a/STM32F103_App1/HardWare/RELAY/relay.c +++ b/STM32F103_App1/HardWare/RELAY/relay.c @@ -34,6 +34,8 @@ void relayCmdProcess(void) /* 等待继电器反馈电路稳定 */ if (HAL_GetTick() - relay_cmd_tick < 100) return; fb_after = relayReadFb(ch); + /* 测试: 仅第 2 路反馈失败应答改中文(UTF-8 字节), 其余路保持英文 */ + const char *failmsg = (ch == 2) ? "\xE8\xB4\x9F\xE8\xBD\xBD\xE6\x96\xAD\xE5\xBC\x80\xE6\x88\x96\xE7\xBB\xA7\xE7\x94\xB5\xE5\x99\xA8\xE6\x8D\x9F\xE5\x9D\x8F" : "Load unpowered / relay failure !"; if (RELAY_FB_ENABLE) { if (MqttInfoStr.Relay_State[ch]) { if (relay_cmd_fb_before == FB_INACTIVE && fb_after == FB_ACTIVE) { @@ -41,7 +43,7 @@ void relayCmdProcess(void) NET_publish_response(relay_cmd_id, 1, "OK"); } else { log_warn("> 继电器: SW%d 未接负载或继电器断开", ch); - NET_publish_response(relay_cmd_id, 0, "Load unpowered / relay failure !"); + NET_publish_response(relay_cmd_id, 0, failmsg); } } else { if (relay_cmd_fb_before == FB_ACTIVE && fb_after == FB_INACTIVE) { @@ -49,7 +51,7 @@ void relayCmdProcess(void) NET_publish_response(relay_cmd_id, 1, "OK"); } else { log_warn("> 继电器: SW%d 未接负载或继电器断开", ch); - NET_publish_response(relay_cmd_id, 0, "Load unpowered / relay failure !"); + NET_publish_response(relay_cmd_id, 0, failmsg); } } } else {