From 4b0f6f4a2e83d9e56364e12cd2855eb1ff21d38a Mon Sep 17 00:00:00 2001 From: yincheng.zhong <634916154@qq.com> Date: 星期六, 20 五月 2023 11:22:41 +0800 Subject: [PATCH] 2 --- Src/stm32l0xx_it.c | 41 ++++++++++++++++++++++++++++++++++++++--- 1 files changed, 38 insertions(+), 3 deletions(-) diff --git a/Src/stm32l0xx_it.c b/Src/stm32l0xx_it.c index 5f240d8..bc1446b 100644 --- a/Src/stm32l0xx_it.c +++ b/Src/stm32l0xx_it.c @@ -61,11 +61,13 @@ extern DMA_HandleTypeDef hdma_usart1_tx; extern UART_HandleTypeDef huart1; /* USER CODE BEGIN EV */ - +float motor_ontime=0; +uint8_t userkey_state = 0; +extern u8 active_flag,motorskip_flag,motor_state; /* USER CODE END EV */ /******************************************************************************/ -/* Cortex-M0+ Processor Interruption and Exception Handlers */ +/* Cortex-M0+ Processor Interruption and Exception Handlers */ /******************************************************************************/ /** * @brief This function handles Non maskable interrupt. @@ -91,6 +93,8 @@ while (1) { /* USER CODE BEGIN W1_HardFault_IRQn 0 */ + printf("HardFault_Handler.\r\n"); + SCB->AIRCR = 0X05FA0000|(unsigned int)0x04; /* USER CODE END W1_HardFault_IRQn 0 */ } } @@ -148,6 +152,7 @@ void EXTI0_1_IRQHandler(void) { /* USER CODE BEGIN EXTI0_1_IRQn 0 */ + SystemClock_Config(); if(GET_IMUINT) { nomove_count = 0; @@ -155,7 +160,23 @@ if(!GET_USERKEY) { - waitusart_timer = tag_frequency*USART_KEEPWAKE_TIME; + if(motor_state) + { + motorskip_flag = 1; + JianXieMotorProcess(); + } + //userkey_state = 1; +// +// if(g_com_map[MOTOR_ENABLE]) +// { +// MOTOR_ON; +// delay_ms(10); +// MOTOR_OFF; +// } + nomove_count = 0; +// waitusart_timer = tag_frequency*USART_KEEPWAKE_TIME; + // UsartInit(); + // MOTOR_ON; } @@ -168,6 +189,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_14); + /* 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