WXK
2024-11-01 6c841ad18a86f1f075340577c0e43ea433bce427
Src/stm32l0xx_it.c
@@ -32,7 +32,7 @@
/* Private define ------------------------------------------------------------*/
/* USER CODE BEGIN PD */
/* USER CODE END PD */
/* Private macro -------------------------------------------------------------*/
@@ -42,7 +42,7 @@
/* Private variables ---------------------------------------------------------*/
/* USER CODE BEGIN PV */
float nomove_count=0;
/* USER CODE END PV */
/* Private function prototypes -----------------------------------------------*/
@@ -59,13 +59,14 @@
extern LPTIM_HandleTypeDef hlptim1;
extern DMA_HandleTypeDef hdma_usart1_rx;
extern DMA_HandleTypeDef hdma_usart1_tx;
extern UART_HandleTypeDef hlpuart1;
extern UART_HandleTypeDef huart1;
/* USER CODE BEGIN EV */
/* 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 +92,7 @@
  while (1)
  {
    /* USER CODE BEGIN W1_HardFault_IRQn 0 */
        SCB->AIRCR = 0X05FA0000|(unsigned int)0x04; //软复位回到bootloader
    /* USER CODE END W1_HardFault_IRQn 0 */
  }
}
@@ -145,26 +147,57 @@
/**
  * @brief This function handles EXTI line 0 and line 1 interrupts.
  */
uint8_t sleep_flag=0;
void EXTI0_1_IRQHandler(void)
{
  /* USER CODE BEGIN EXTI0_1_IRQn 0 */
   //GPIO_Toggle(MOTOR_GPIO_Port,MOTOR_Pin);
    if(GET_IMUINT)
    {
        nomove_count = 0;
    }
    if(!GET_USERKEY)
    {
        nomove_count = 0;
        waitusart_timer = tag_frequency*USART_KEEPWAKE_TIME;
        UsartInit();
        //   MOTOR_ON;
    }
  /* USER CODE END EXTI0_1_IRQn 0 */
   //sleep_flag=1;
   //HAL_PWR_EnterSTOPMode(PWR_LOWPOWERREGULATOR_ON, PWR_STOPENTRY_WFI);
  HAL_GPIO_EXTI_IRQHandler(GPIO_PIN_0);
  HAL_GPIO_EXTI_IRQHandler(GPIO_PIN_1);
//  /* USER CODE BEGIN EXTI0_1_IRQn 1 */
//   HAL_LPTIM_DeInit(&hlptim1);
////HAL_PWR_EnterSTOPMode(PWR_LOWPOWERREGULATOR_ON, PWR_STOPENTRY_WFI);
//HAL_PWR_DisableWakeUpPin(PWR_WAKEUP_PIN1);
//  /*Clear all related wakeup flags*/
//  __HAL_PWR_CLEAR_FLAG(PWR_FLAG_WU);
//  /*Re-enable all used wakeup sources: Pin1(PA.0)*/
//  HAL_PWR_EnableWakeUpPin(PWR_WAKEUP_PIN1);
//  /*Enter the Standby mode*/
//  HAL_PWR_EnterSTANDBYMode();
  /* USER CODE BEGIN EXTI0_1_IRQn 1 */
    //DW_DISABLE;
  /* USER CODE END EXTI0_1_IRQn 1 */
}
/**
  * @brief This function handles EXTI line 2 and line 3 interrupts.
  */
void EXTI2_3_IRQHandler(void)
{
  /* USER CODE BEGIN EXTI2_3_IRQn 0 */
  /* USER CODE END EXTI2_3_IRQn 0 */
  HAL_GPIO_EXTI_IRQHandler(GPIO_PIN_3);
  /* USER CODE BEGIN EXTI2_3_IRQn 1 */
  /* USER CODE END EXTI2_3_IRQn 1 */
}
/**
  * @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_11);
  HAL_GPIO_EXTI_IRQHandler(GPIO_PIN_15);
  /* USER CODE BEGIN EXTI4_15_IRQn 1 */
  /* USER CODE END EXTI4_15_IRQn 1 */
}
/**
@@ -189,7 +222,6 @@
{
  /* USER CODE BEGIN LPTIM1_IRQn 0 */
  /* USER CODE END LPTIM1_IRQn 0 */
  HAL_LPTIM_IRQHandler(&hlptim1);
  /* USER CODE BEGIN LPTIM1_IRQn 1 */
@@ -203,7 +235,7 @@
void USART1_IRQHandler(void)
{
  /* USER CODE BEGIN USART1_IRQn 0 */
 __HAL_UART_CLEAR_IDLEFLAG(&huart1);
    __HAL_UART_CLEAR_IDLEFLAG(&huart1);
  /* USER CODE END USART1_IRQn 0 */
  HAL_UART_IRQHandler(&huart1);
  /* USER CODE BEGIN USART1_IRQn 1 */
@@ -211,6 +243,20 @@
  /* USER CODE END USART1_IRQn 1 */
}
/**
  * @brief This function handles LPUART1 global interrupt / LPUART1 wake-up interrupt through EXTI line 28.
  */
void LPUART1_IRQHandler(void)
{
  /* USER CODE BEGIN LPUART1_IRQn 0 */
  /* USER CODE END LPUART1_IRQn 0 */
  HAL_UART_IRQHandler(&hlpuart1);
  /* USER CODE BEGIN LPUART1_IRQn 1 */
  /* USER CODE END LPUART1_IRQn 1 */
}
/* USER CODE BEGIN 1 */
/* USER CODE END 1 */