From 1baabdeaa771233bd719e6eb01dc6828d5c3f9cf Mon Sep 17 00:00:00 2001 From: yincheng.zhong <634916154@qq.com> Date: 星期五, 11 八月 2023 12:37:59 +0800 Subject: [PATCH] 增加搜索模式减少时间片 --- Src/stm32l0xx_it.c | 48 ++++++++++++++++++++++++++++++++++++++++-------- 1 files changed, 40 insertions(+), 8 deletions(-) diff --git a/Src/stm32l0xx_it.c b/Src/stm32l0xx_it.c index 4225899..08b5087 100644 --- a/Src/stm32l0xx_it.c +++ b/Src/stm32l0xx_it.c @@ -43,6 +43,8 @@ /* Private variables ---------------------------------------------------------*/ /* USER CODE BEGIN PV */ float nomove_count=0; +float button_delay = 1; +u16 button_start; /* USER CODE END PV */ /* Private function prototypes -----------------------------------------------*/ @@ -152,21 +154,37 @@ void EXTI0_1_IRQHandler(void) { /* USER CODE BEGIN EXTI0_1_IRQn 0 */ + static u16 lastcount=0; + u16 count_diff; + SystemClock_Config(); if(GET_IMUINT) { nomove_count = 0; } - if(!GET_USERKEY) + if(!GET_USERKEY) { userkey_state = 1; - - if(g_com_map[MOTOR_ENABLE]) - { - MOTOR_ON; - delay_ms(10); - MOTOR_OFF; - } + if(button_delay>=1) + { + button_start = GetLPTime(); + button_delay = 0; + }else{ + u16 button_time = GetLPTime()-button_start; + if(button_time<0) + button_time+=1000; + if(button_time>50&&button_time<300) + { + DoubleClickProcess(); + } + + } +// if(g_com_map[MOTOR_ENABLE]) +// { +// MOTOR_ON; +// delay_ms(10); +// MOTOR_OFF; +// } nomove_count = 0; // waitusart_timer = tag_frequency*USART_KEEPWAKE_TIME; // UsartInit(); @@ -183,6 +201,20 @@ } /** + * @brief This function handles EXTI line 4 to 15 interrupts. + */ +void EXTI4_15_IRQHandler(void) +{ + /* USER CODE BEGIN EXTI4_15_IRQn 0 */ + + /* USER CODE END EXTI4_15_IRQn 0 */ + HAL_GPIO_EXTI_IRQHandler(GPIO_PIN_8); + /* USER CODE BEGIN EXTI4_15_IRQn 1 */ + + /* USER CODE END EXTI4_15_IRQn 1 */ +} + +/** * @brief This function handles DMA1 channel 2 and channel 3 interrupts. */ void DMA1_Channel2_3_IRQHandler(void) -- Gitblit v1.9.3