diff --git a/.settings/language.settings.xml b/.settings/language.settings.xml
index 7b365a4..411f6f3 100644
--- a/.settings/language.settings.xml
+++ b/.settings/language.settings.xml
@@ -5,7 +5,7 @@
-
+
@@ -16,7 +16,7 @@
-
+
diff --git a/.settings/stm32cubeide.project.prefs b/.settings/stm32cubeide.project.prefs
index 21d655b..6169284 100644
--- a/.settings/stm32cubeide.project.prefs
+++ b/.settings/stm32cubeide.project.prefs
@@ -1,5 +1,5 @@
635E684B79701B039C64EA45C3F84D30=6180EFBD1DA04EB1319C95830D4DB159
66BE74F758C12D739921AEA421D593D3=5
-8DF89ED150041C4CBC7CB9A9CAA90856=9FE8B57A80F4C5C9B24FE12120255044
-DC22A860405A8BF2F2C095E5B6529F12=9FE8B57A80F4C5C9B24FE12120255044
+8DF89ED150041C4CBC7CB9A9CAA90856=B8F564F3DE821C1660C221EB6DA11AB4
+DC22A860405A8BF2F2C095E5B6529F12=B8F564F3DE821C1660C221EB6DA11AB4
eclipse.preferences.version=1
diff --git a/Intelligent_winding_robot_main_board.ioc b/Intelligent_winding_robot_main_board.ioc
index eb6a311..c8dae15 100644
--- a/Intelligent_winding_robot_main_board.ioc
+++ b/Intelligent_winding_robot_main_board.ioc
@@ -212,7 +212,7 @@ ProjectManager.DeviceId=STM32F407ZGTx
ProjectManager.FirmwarePackage=STM32Cube FW_F4 V1.27.1
ProjectManager.FreePins=false
ProjectManager.HalAssertFull=false
-ProjectManager.HeapSize=0x2000
+ProjectManager.HeapSize=0x4000
ProjectManager.KeepUserCode=true
ProjectManager.LastFirmware=true
ProjectManager.LibraryCopy=1
diff --git a/STM32F407ZGTX_FLASH.ld b/STM32F407ZGTX_FLASH.ld
index c59dca4..03b408c 100644
--- a/STM32F407ZGTX_FLASH.ld
+++ b/STM32F407ZGTX_FLASH.ld
@@ -39,7 +39,7 @@ ENTRY(Reset_Handler)
/* Highest address of the user mode stack */
_estack = ORIGIN(RAM) + LENGTH(RAM); /* end of "RAM" Ram type memory */
-_Min_Heap_Size = 0x2000; /* required amount of heap */
+_Min_Heap_Size = 0x4000; /* required amount of heap */
_Min_Stack_Size = 0x1000; /* required amount of stack */
/* Memories definition */
diff --git a/sdk b/sdk
index 85b8278..c754d77 160000
--- a/sdk
+++ b/sdk
@@ -1 +1 @@
-Subproject commit 85b827815841cd0ad95352d5ee5917a6034c45e3
+Subproject commit c754d770814e82b81340d943a3383fb81719a6fa
diff --git a/usrc/device.cpp b/usrc/device.cpp
index ed1d90b..44075e5 100644
--- a/usrc/device.cpp
+++ b/usrc/device.cpp
@@ -1,5 +1,7 @@
#include "device.hpp"
+#include
+
#include "sdk\components\eq_20_asb_motor\eq20_servomotor.hpp"
#include "sdk\components\mini_servo_motor\mini_servo_motor_ctrl_module.hpp"
@@ -82,7 +84,7 @@ void Device::init_bus() {
/*******************************************************************************
* 初始化MODBUS总线 *
*******************************************************************************/
- m_modbus.initialize(&huart2, &hdma_usart2_rx, &hdma_usart2_tx);
+ m_modbus.initialize(&huart2, &hdma_usart2_tx, &hdma_usart2_rx);
}
#define REG_SUB_MODULE(table) \
@@ -110,8 +112,10 @@ void Device::sub_module_init() {
/**
* @brief 初始化主轴电机
*/
+ static Eq20ServoMotor::servo_config_t default_servo_cfg = //
+ {.default_acc_time_ms = 1000, .default_velocity = 800, .find_zero_velocity = 100};
static Eq20ServoMotor eq20_motor;
- eq20_motor.init(1, &m_modbus, 1);
+ eq20_motor.init(1, &m_modbus, 1, default_servo_cfg);
m_device_manager.registerModule(&eq20_motor);
/**
@@ -150,6 +154,10 @@ void Device::sub_module_init() {
can_step_motor_proxy[i++].initialize(61, &m_zcanbus);
can_step_motor_proxy[i++].initialize(62, &m_zcanbus);
REG_SUB_MODULE(can_step_motor_proxy);
+
+ m_device_manager.module_set_reg(42, kreg_stepmotor_ihold, 4);
+ m_device_manager.module_set_reg(42, kreg_stepmotor_irun, 28);
+ m_device_manager.module_active_cfg(42);
}
void Device::line_locking_solenoid_valve_init() {}