From 36593a8b116347a9fbe33aaeeb5c3b9c58f0c768 Mon Sep 17 00:00:00 2001 From: HSZ_HeSongZhen <210202959@qq.com> Date: Tue, 6 May 2025 10:40:01 +0800 Subject: [PATCH] =?UTF-8?q?add:=20=E7=94=B5=E6=9C=BA=20=E8=88=B5=E6=9C=BA?= =?UTF-8?q?=20=E5=A2=9E=E5=8A=A0=20=E8=8E=B7=E5=8F=96=20=E8=AE=BE=E5=A4=87?= =?UTF-8?q?=E5=88=97=E8=A1=A8=20=E5=AF=84=E5=AD=98=E5=99=A8=E5=88=97?= =?UTF-8?q?=E8=A1=A8=E9=80=89=E9=A1=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../gd/hardware/controller/ServoController.java | 27 ++++++++++++++++++++++ .../hardware/controller/StepMotorController.java | 25 ++++++++++++++++++++ 2 files changed, 52 insertions(+) diff --git a/src/main/java/com/iflytop/gd/hardware/controller/ServoController.java b/src/main/java/com/iflytop/gd/hardware/controller/ServoController.java index c2a2da6..d3c334e 100644 --- a/src/main/java/com/iflytop/gd/hardware/controller/ServoController.java +++ b/src/main/java/com/iflytop/gd/hardware/controller/ServoController.java @@ -2,6 +2,8 @@ package com.iflytop.gd.hardware.controller; import com.iflytop.gd.hardware.drivers.MiniServoDriver.DeviceServoId; import com.iflytop.gd.hardware.drivers.MiniServoDriver.MiniServoRegIndex; +import com.iflytop.gd.hardware.drivers.StepMotorDriver.DeviceStepMotorId; +import com.iflytop.gd.hardware.drivers.StepMotorDriver.StepMotorRegIndex; import com.iflytop.gd.hardware.exception.HardwareException; import com.iflytop.gd.hardware.service.ServoService; import io.swagger.v3.oas.annotations.Operation; @@ -10,6 +12,9 @@ import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.web.bind.annotation.*; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; import java.util.Map; @Tag(name = "伺服电机控制") @@ -20,6 +25,28 @@ import java.util.Map; public class ServoController { private final ServoService servoService; + // 获取设备列表 + @PostMapping("get-device-list") + @Operation(summary = "获取设备列表") + public Map getDeviceList() { + Map map = new HashMap<>(); + for(DeviceServoId id : DeviceServoId.values()) { + map.put(id.name(), id.getDescription()); + } + return map; + } + + // 获取寄存器列表 + @PostMapping("get-reg-list") + @Operation(summary = "获取寄存器列表") + public List getRegList() { + List list = new ArrayList<>(); + for(MiniServoRegIndex reg : MiniServoRegIndex.values()) { + list.add(reg.name()); + } + return list; + } + // 基础操作 @PostMapping("/enable") @Operation(summary = "电源开启") diff --git a/src/main/java/com/iflytop/gd/hardware/controller/StepMotorController.java b/src/main/java/com/iflytop/gd/hardware/controller/StepMotorController.java index e63120c..fa79185 100644 --- a/src/main/java/com/iflytop/gd/hardware/controller/StepMotorController.java +++ b/src/main/java/com/iflytop/gd/hardware/controller/StepMotorController.java @@ -9,6 +9,9 @@ import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.web.bind.annotation.*; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; import java.util.Map; @Tag(name = "步进电机控制") @@ -19,6 +22,28 @@ import java.util.Map; public class StepMotorController { private final StepMotorService stepMotorService; + // 获取设备列表 + @PostMapping("get-device-list") + @Operation(summary = "获取设备列表") + public Map getDeviceList() { + Map map = new HashMap<>(); + for(DeviceStepMotorId id : DeviceStepMotorId.values()) { + map.put(id.name(), id.getDescription()); + } + return map; + } + + // 获取寄存器列表 + @PostMapping("get-reg-list") + @Operation(summary = "获取寄存器列表") + public List getRegList() { + List list = new ArrayList<>(); + for(StepMotorRegIndex reg : StepMotorRegIndex.values()) { + list.add(reg.name()); + } + return list; + } + // 基础设置 @PostMapping("/speed-level") @Operation(summary = "设置速度等级")