title: how to use EXTI interrupt with HAL library for stm32f1?
body: <p>i need to configure an exti interrupt on A1 port of my stm32f103 board.
  I create a template with stm32cubemx but i'm trying to configure interrupt manually because it's a new feature of my code that i've already wrote. i'm reading many topics but i not found any solution.
  In this project i use the HAL library and i follow this steps:</p>
  
  <p>configure the GPIO</p>
  
  <pre><code>      GPIO_InitStruct.Pin = GPIO_PIN_1;
        GPIO_InitStruct.Mode = GPIO_MODE_IT_RISING;
        GPIO_InitStruct.Pull = GPIO_NOPULL;
        GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_HIGH;
        HAL_GPIO_Init(GPIOA, &amp;GPIO_InitStruct);
  </code></pre>
  
  <p>Enable IRQ</p>
  
  <pre><code>     HAL_NVIC_SetPriority(EXTI1_IRQn, 3, 0);
       HAL_NVIC_EnableIRQ(EXTI1_IRQn);
  </code></pre>
  
  <p>Customizing the callback </p>
  
  <pre><code>      void HAL_GPIO_EXTI_Callback(uint16_t GPIO_Pin)
       {
        if(GPIO_Pin == STEP_PIN)
        {
          GlobalMotorData.step.longint++;
        }
       }
  </code></pre>
  
  <p>i wrote The callback function  in a new .c file and i do not touch the same function inside stm32f1xx_hal_gpio.c</p>
  
  <p>i not enabled the macro HAL_EXTI_MODULE_ENABLED because the project not find the corrisponding .h header file but without the macro, code builds without errors.</p>
  
  <p>What i forgot?</p>
  
  <p>thank you</p>