From a923808ede32d6cdc2216c2b6d69d3a9d3c528bd Mon Sep 17 00:00:00 2001
From: YuanHongbin <975559679@qq.com>
Date: Tue, 30 Sep 2025 15:25:12 +0800
Subject: [PATCH] =?UTF-8?q?=E5=8F=8C=E6=9F=B1=E5=8F=8C=E7=94=B5=E6=9C=BAS?=
=?UTF-8?q?=E5=9E=8B=E4=BC=A0=E6=84=9F=E5=99=A8=E7=8B=AC=E7=AB=8B=E5=88=86?=
=?UTF-8?q?=E6=94=AF=E5=88=9D=E5=A7=8B=E7=89=88=E6=9C=AC?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
Project/HC32F460/MDK/HC32F460.uvoptx | 7 ++-
Project/HC32F460/MDK/HC32F460.uvprojx | 16 +++++--
.../HC32F460/MDK/RTE/_Debug/RTE_Components.h | 3 +-
Project/HC32F460/source/User/Inc/bsp.h | 12 +++++
Project/HC32F460/source/User/Inc/main.h | 6 +--
Project/HC32F460/source/User/Src/bsp.c | 3 ++
Project/HC32F460/source/User/Src/main.c | 48 +++++++++----------
7 files changed, 62 insertions(+), 33 deletions(-)
diff --git a/Project/HC32F460/MDK/HC32F460.uvoptx b/Project/HC32F460/MDK/HC32F460.uvoptx
index 32825d9..d5d2891 100644
--- a/Project/HC32F460/MDK/HC32F460.uvoptx
+++ b/Project/HC32F460/MDK/HC32F460.uvoptx
@@ -101,7 +101,9 @@
0
0
1
- 2
+ 0
+ 0
+ 12
@@ -316,6 +318,7 @@
1
+ 0
0
2
5000000
@@ -403,6 +406,8 @@
0
0
1
+ 0
+ 0
-1
diff --git a/Project/HC32F460/MDK/HC32F460.uvprojx b/Project/HC32F460/MDK/HC32F460.uvprojx
index 381d7a6..7f13d3e 100644
--- a/Project/HC32F460/MDK/HC32F460.uvprojx
+++ b/Project/HC32F460/MDK/HC32F460.uvprojx
@@ -10,8 +10,8 @@
Debug
0x4
ARM-ADS
- 5060528::V5.06 update 5 (build 528)::ARMCC
- 5060528::V5.06 update 5 (build 528)::ARMCC
+ 5060960::V5.06 update 7 (build 960)::ARMCC
+ 5060960::V5.06 update 7 (build 960)::ARMCC
0
@@ -185,6 +185,9 @@
0
0
2
+ 0
+ 0
+ 0
1
1
8
@@ -325,6 +328,7 @@
0
0
1
+ 0
0
3
3
@@ -350,7 +354,7 @@
0
0
0
- 0
+ 4
@@ -859,6 +863,9 @@
0
0
1
+ 0
+ 0
+ 0
1
1
8
@@ -999,6 +1006,7 @@
0
0
1
+ 0
0
0
0
@@ -1024,7 +1032,7 @@
0
0
0
- 0
+ 4
diff --git a/Project/HC32F460/MDK/RTE/_Debug/RTE_Components.h b/Project/HC32F460/MDK/RTE/_Debug/RTE_Components.h
index d0352e7..74af911 100644
--- a/Project/HC32F460/MDK/RTE/_Debug/RTE_Components.h
+++ b/Project/HC32F460/MDK/RTE/_Debug/RTE_Components.h
@@ -1,6 +1,6 @@
/*
- * Auto generated Run-Time-Environment Component Configuration File
+ * Auto generated Run-Time-Environment Configuration File
* *** Do not modify ! ***
*
* Project: 'HC32F460'
@@ -17,4 +17,5 @@
#define CMSIS_device_header "HC32F460JETA.h"
+
#endif /* RTE_COMPONENTS_H */
diff --git a/Project/HC32F460/source/User/Inc/bsp.h b/Project/HC32F460/source/User/Inc/bsp.h
index 617d990..d7bddbc 100644
--- a/Project/HC32F460/source/User/Inc/bsp.h
+++ b/Project/HC32F460/source/User/Inc/bsp.h
@@ -167,6 +167,18 @@
#define CLR_RIGHTLOW_CS1237_SCLK() PORT_ResetBits(RIGHTLOW_CS1237_SCLK_PORTx, RIGHTLOW_CS1237_SCLK_PINx)//拉低
#endif
+//< BIT0
+#define TWIN_BIT0_PORTx (PortB)
+#define TWIN_BIT0_PINx (Pin12)
+#define SET_TWIN_BIT0() PORT_SetBits(TWIN_BIT0_PORTx, TWIN_BIT0_PINx)//拉高
+#define CLR_TWIN_BIT0() PORT_ResetBits(TWIN_BIT0_PORTx, TWIN_BIT0_PINx)//拉低
+
+//< BIT1
+#define TWIN_BIT1_PORTx (PortB)
+#define TWIN_BIT1_PINx (Pin13)
+#define SET_TWIN_BIT1() PORT_SetBits(TWIN_BIT1_PORTx, TWIN_BIT1_PINx)//拉高
+#define CLR_TWIN_BIT1() PORT_ResetBits(TWIN_BIT1_PORTx, TWIN_BIT1_PINx)//拉低
+
typedef struct {
uint32_t ControlLevel;//控制等级
uint32_t DBGWaveOut;//调试波形输出
diff --git a/Project/HC32F460/source/User/Inc/main.h b/Project/HC32F460/source/User/Inc/main.h
index 0ce5148..273ccc5 100644
--- a/Project/HC32F460/source/User/Inc/main.h
+++ b/Project/HC32F460/source/User/Inc/main.h
@@ -13,9 +13,9 @@
#define STOP_TIME_MS 500
#define RUN_TIME_MS 0
-#define BDC_STOP() Motor_Control(MOTOR_CMD_STOP)
-#define BDC_UP() Motor_Control(MOTOR_CMD_FORWARD)
-#define BDC_DOWN() Motor_Control(MOTOR_CMD_REVERSE)
+#define BDC_STOP() (SET_TWIN_BIT0(),SET_TWIN_BIT1())
+#define BDC_UP() (CLR_TWIN_BIT0(),SET_TWIN_BIT1())
+#define BDC_DOWN() (SET_TWIN_BIT0(),CLR_TWIN_BIT1())
/*控制等级*/
typedef enum {
diff --git a/Project/HC32F460/source/User/Src/bsp.c b/Project/HC32F460/source/User/Src/bsp.c
index 3673cbb..9ded62f 100644
--- a/Project/HC32F460/source/User/Src/bsp.c
+++ b/Project/HC32F460/source/User/Src/bsp.c
@@ -445,6 +445,9 @@ static void GPIO_Config(void)
PORT_Init(RIGHTUP_CS1237_SCLK_PORTx, RIGHTUP_CS1237_SCLK_PINx, &stcPortInit);
PORT_Init(RIGHTLOW_CS1237_SCLK_PORTx, RIGHTLOW_CS1237_SCLK_PINx, &stcPortInit);
+ stcPortInit.enPullUp = Enable;//上拉
+ PORT_Init(TWIN_BIT0_PORTx, TWIN_BIT0_PINx, &stcPortInit);
+ PORT_Init(TWIN_BIT1_PORTx, TWIN_BIT1_PINx, &stcPortInit);
}
/*********************************左上传感器
*******************************************************************************
diff --git a/Project/HC32F460/source/User/Src/main.c b/Project/HC32F460/source/User/Src/main.c
index 1669862..a5d6407 100644
--- a/Project/HC32F460/source/User/Src/main.c
+++ b/Project/HC32F460/source/User/Src/main.c
@@ -410,36 +410,36 @@ void SupportControlHandle(int32_t *lu_ad, int32_t *ll_ad, int32_t *ru_ad, int32_
if (lu_K.peaks_positive
&& lu_K.valleys_negative
- && lu_diff[0] < App.ADTrack.Slope_VPT / 2
- && lu_diff[0] > -App.ADTrack.Slope_VPT / 2
- && lu_diff[1] < App.ADTrack.Slope_VPT / 2
- && lu_diff[1] > -App.ADTrack.Slope_VPT / 2
- && lu_diff[2] < App.ADTrack.Slope_VPT / 2
- && lu_diff[2] > -App.ADTrack.Slope_VPT / 2
+ && App.LeftUpCS1237_SlopeArray[0] < App.ADTrack.Slope_VPT / 2
+ && App.LeftUpCS1237_SlopeArray[0] > -App.ADTrack.Slope_VPT / 2
+ && App.LeftUpCS1237_SlopeArray[1] < App.ADTrack.Slope_VPT / 2
+ && App.LeftUpCS1237_SlopeArray[1] > -App.ADTrack.Slope_VPT / 2
+ && App.LeftUpCS1237_SlopeArray[2] < App.ADTrack.Slope_VPT / 2
+ && App.LeftUpCS1237_SlopeArray[2] > -App.ADTrack.Slope_VPT / 2
&& ll_K.peaks_positive
&& ll_K.valleys_negative
- && ll_diff[0] < App.ADTrack.Slope_VPT / 2
- && ll_diff[0] > -App.ADTrack.Slope_VPT / 2
- && ll_diff[1] < App.ADTrack.Slope_VPT / 2
- && ll_diff[1] > -App.ADTrack.Slope_VPT / 2
- && ll_diff[2] < App.ADTrack.Slope_VPT / 2
- && ll_diff[2] > -App.ADTrack.Slope_VPT / 2
+ && App.LeftLowCS1237_SlopeArray[0] < App.ADTrack.Slope_VPT / 2
+ && App.LeftLowCS1237_SlopeArray[0] > -App.ADTrack.Slope_VPT / 2
+ && App.LeftLowCS1237_SlopeArray[1] < App.ADTrack.Slope_VPT / 2
+ && App.LeftLowCS1237_SlopeArray[1] > -App.ADTrack.Slope_VPT / 2
+ && App.LeftLowCS1237_SlopeArray[2] < App.ADTrack.Slope_VPT / 2
+ && App.LeftLowCS1237_SlopeArray[2] > -App.ADTrack.Slope_VPT / 2
&& ru_K.peaks_positive
&& ru_K.valleys_negative
- && ru_diff[0] < App.ADTrack.Slope_VPT / 2
- && ru_diff[0] > -App.ADTrack.Slope_VPT / 2
- && ru_diff[1] < App.ADTrack.Slope_VPT / 2
- && ru_diff[1] > -App.ADTrack.Slope_VPT / 2
- && ru_diff[2] < App.ADTrack.Slope_VPT / 2
- && ru_diff[2] > -App.ADTrack.Slope_VPT / 2
+ && App.RightUpCS1237_SlopeArray[0] < App.ADTrack.Slope_VPT / 2
+ && App.RightUpCS1237_SlopeArray[0] > -App.ADTrack.Slope_VPT / 2
+ && App.RightUpCS1237_SlopeArray[1] < App.ADTrack.Slope_VPT / 2
+ && App.RightUpCS1237_SlopeArray[1] > -App.ADTrack.Slope_VPT / 2
+ && App.RightUpCS1237_SlopeArray[2] < App.ADTrack.Slope_VPT / 2
+ && App.RightUpCS1237_SlopeArray[2] > -App.ADTrack.Slope_VPT / 2
&& rl_K.peaks_positive
&& rl_K.valleys_negative
- && rl_diff[0] < App.ADTrack.Slope_VPT / 2
- && rl_diff[0] > -App.ADTrack.Slope_VPT / 2
- && rl_diff[1] < App.ADTrack.Slope_VPT / 2
- && rl_diff[1] > -App.ADTrack.Slope_VPT / 2
- && rl_diff[2] < App.ADTrack.Slope_VPT / 2
- && rl_diff[2] > -App.ADTrack.Slope_VPT / 2)
+ && App.RightLowCS1237_SlopeArray[0] < App.ADTrack.Slope_VPT / 2
+ && App.RightLowCS1237_SlopeArray[0] > -App.ADTrack.Slope_VPT / 2
+ && App.RightLowCS1237_SlopeArray[1] < App.ADTrack.Slope_VPT / 2
+ && App.RightLowCS1237_SlopeArray[1] > -App.ADTrack.Slope_VPT / 2
+ && App.RightLowCS1237_SlopeArray[2] < App.ADTrack.Slope_VPT / 2
+ && App.RightLowCS1237_SlopeArray[2] > -App.ADTrack.Slope_VPT / 2)
{
if(App.StopFlag == true && App.StopCollDelay1mSCnt <= 0){
App.ADTrack.LeftUp_Org_AdZero = lu_ad[0];