From dff6629dc3ecce94f55a0d6a431aba8f43ddacd6 Mon Sep 17 00:00:00 2001 From: bmy <2583236812@qq.com> Date: Sat, 3 Aug 2024 12:36:36 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E9=80=82=E9=85=8D=E6=96=B0=E7=BB=93?= =?UTF-8?q?=E6=9E=84=EF=BC=8C=E5=8F=8D=E8=BD=AC=E7=94=B5=E6=9C=BA=E5=B9=B6?= =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E5=A4=8D=E4=BD=8D=E9=AB=98=E5=BA=A6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .eide/eide.json | 5 +---- app/by_motion.c | 12 ++++++------ 2 files changed, 7 insertions(+), 10 deletions(-) diff --git a/.eide/eide.json b/.eide/eide.json index 454fe08..f7b8cfe 100644 --- a/.eide/eide.json +++ b/.eide/eide.json @@ -3,7 +3,6 @@ "type": "ARM", "dependenceList": [], "srcDirs": [ - ".eide/deps", "3rd-part", "libraries/cmsis", "libraries/drivers", @@ -68,13 +67,11 @@ "libraries/cmsis/cm4/device_support", "project/inc", ".cmsis/include", - ".eide/deps", "3rd-part/PID-Library", "app", "3rd-part/lwprintf" ], "libList": [], - "sourceDirList": [], "defineList": [ "USE_STDPERIPH_DRIVER", "AT32F425C8T7" @@ -82,5 +79,5 @@ } } }, - "version": "3.3" + "version": "3.4" } \ No newline at end of file diff --git a/app/by_motion.c b/app/by_motion.c index c12c84f..8922e63 100644 --- a/app/by_motion.c +++ b/app/by_motion.c @@ -24,11 +24,11 @@ void by_motion_set_pwm_m1(int32_t pwm_duty) pwm_duty = clip_s32(pwm_duty, -900, 900); // 不可以拉满哦 if (pwm_duty < 0) { - tmr_channel_value_set(TMR1, TMR_SELECT_CHANNEL_3, -pwm_duty); - tmr_channel_value_set(TMR1, TMR_SELECT_CHANNEL_4, 0); - } else { + tmr_channel_value_set(TMR1, TMR_SELECT_CHANNEL_4, -pwm_duty); tmr_channel_value_set(TMR1, TMR_SELECT_CHANNEL_3, 0); - tmr_channel_value_set(TMR1, TMR_SELECT_CHANNEL_4, pwm_duty); + } else { + tmr_channel_value_set(TMR1, TMR_SELECT_CHANNEL_4, 0); + tmr_channel_value_set(TMR1, TMR_SELECT_CHANNEL_3, pwm_duty); } } @@ -49,7 +49,7 @@ int16_t by_motion_get_speed_m1(void) { #define alpha (0.1f) static float last_speed = 0.0f; - param_m1.real_speed = alpha * last_speed + (1.0f - alpha) * (float)(+1 * (int16_t)tmr_counter_value_get(TMR3)); + param_m1.real_speed = alpha * last_speed + (1.0f - alpha) * (float)(-1 * (int16_t)tmr_counter_value_get(TMR3)); last_speed = param_m1.real_speed; tmr_counter_value_set(TMR3, 0); return (int16_t)param_m1.real_speed; @@ -184,7 +184,7 @@ void by_motion_init(void) // 等待复位 } by_motion_set_speed_m1(0); - by_motion_set_distance2(100, 30); + by_motion_set_distance2(130, 30); delay_ms(2600); by_motion_set_distance2(0, 30); }