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];