feature(command):添加M5停止命令,M5P0,M5P1

This commit is contained in:
2026-07-28 19:46:22 +08:00
parent 37232c617f
commit 15cf25a9e0
2 changed files with 15 additions and 9 deletions
+14 -2
View File
@@ -462,7 +462,7 @@ void handle_command(const uint8_t *frame, uint8_t len) {
send_response(RESP_TYPE_PARAM_ERR, s_report_status_err, sizeof(s_report_status_err));
return;
}
COMMAND_DEBUG("M3 Command(PUSH): Actuator Channel=%u, Duty Cycle=%u", p_val, s_val);
SEGGER_RTT_printf(0, "[COMMAND] M3 Command(PUSH): Actuator Channel=%u, Duty Cycle=%u \n", p_val, s_val);
actuator_output((actuator_channel_t)p_val, (uint16_t)s_val, DIRECTION_PUSH);
send_response(RESP_TYPE_OK, s_report_status_ok, sizeof(s_report_status_ok));
}
@@ -484,12 +484,24 @@ void handle_command(const uint8_t *frame, uint8_t len) {
send_response(RESP_TYPE_PARAM_ERR, s_report_status_err, sizeof(s_report_status_err));
return;
}
COMMAND_DEBUG("M4 Command(PULL): Actuator Channel=%u, Duty Cycle=%u", p_val, s_val);
SEGGER_RTT_printf(0, "[COMMAND] M4 Command(PULL): Actuator Channel=%u, Duty Cycle=%u \n", p_val, s_val);
actuator_output((actuator_channel_t)p_val, (uint16_t)s_val, DIRECTION_PULL);
send_response(RESP_TYPE_OK, s_report_status_ok, sizeof(s_report_status_ok));
}
return;
case 5u: // M5 stop actuator output
uint32_t p_val = 0;
bool has_p = find_parameter_value(cmd, cmd_len, 'P', &p_val);
if (!has_p || p_val > (uint32_t)ACTUATOR_CH2) {
send_response(RESP_TYPE_PARAM_ERR, s_report_status_err, sizeof(s_report_status_err));
return;
}
SEGGER_RTT_printf(0, "[COMMAND] M5 Command(STOP): Actuator Channel=%u \n", p_val);
actuator_stop((actuator_channel_t)p_val);
send_response(RESP_TYPE_OK, s_report_status_ok, sizeof(s_report_status_ok));
return;
/* ==========================================
* M888 软件重启命令
* ========================================== */