diff --git a/diaoerqiege/BHBF_Robot_Lifting_Lug/Core/Src/FSM.c b/diaoerqiege/BHBF_Robot_Lifting_Lug/Core/Src/FSM.c index 4fe1f57..56c4170 100644 --- a/diaoerqiege/BHBF_Robot_Lifting_Lug/Core/Src/FSM.c +++ b/diaoerqiege/BHBF_Robot_Lifting_Lug/Core/Src/FSM.c @@ -149,6 +149,10 @@ void Mode_Control() extern uint8_t Pin2; extern uint8_t Test1; +int IsLeft = 0; +int IsRight = 0; +int Frontend_Speed = 0; + void IO_Control() { //GF_BSP_GPIO_SetIO(4, 1); @@ -175,6 +179,12 @@ void IO_Control() { GF_BSP_GPIO_SetIO(3, 1); } + + IsLeft = GF_BSP_GPIO_ReadIO(0); + IsRight = GF_BSP_GPIO_ReadIO(1); + if (0 == IsLeft) LS_485Motors_Speed = -Frontend_Speed; + else if (0 == IsRight) LS_485Motors_Speed = Frontend_Speed; + else LS_485Motors_Speed = 0; } void Automatic_Init() @@ -421,33 +431,8 @@ void Strong_Grinding_Machine_Control() uint8_t loosening_knife_signal = 0; uint8_t clamping_knife_signal = 0; -int Knife_Detection(void) -{ -// uint8_t loosening_knife_signal = 1; -// uint8_t clamping_knife_signal = 1; - - // 夹刀信号检测 - clamping_knife_signal = GF_BSP_GPIO_ReadIO(0); - // 松刀信号检测 - loosening_knife_signal = GF_BSP_GPIO_ReadIO(1); - - if(loosening_knife_signal == 0) - { - return 0; - } - else if(clamping_knife_signal == 0) - { - return 1; - } - else{ - return 0; - } - -} - extern int32_t KinfePosition; extern int StrongSingleShotFlag; -int Frontend_Speed = 0; void Frontend_Control() { @@ -477,7 +462,6 @@ void Frontend_Control() // 右转 if((angle >= -45) && (angle <=45)) { - LS_485Motors_Speed = Frontend_Speed; return; } } @@ -490,18 +474,15 @@ void Frontend_Control() // 左转 else if(((angle > 135) && (angle <= 180)) || (angle < -135) && (angle >= -179)) { - LS_485Motors_Speed = -Frontend_Speed; return; } else { - LS_485Motors_Speed = 0; CurrentFrontEndState = HALT_STATE; } } // 低速控制前端雷赛电机 else if(GV.MK32_Key.CH5_SB == -1000) { - LS_485Motors_Speed = 0; // 前进 if((angle >= 45) && (angle <= 135)) { @@ -535,7 +516,6 @@ void Frontend_Control() } else{ - LS_485Motors_Speed = 0; // 前进 if((angle >= 45) && (angle <= 135)) {