From FSM Muh, 1 Year ago, written in C.
Embed
  1. /* USER CODE BEGIN 0 */
  2.  
  3. /**
  4. * @brief This function handles EXTI line0 interrupt.
  5. */
  6. void EXTI0_IRQHandler(void)
  7. {
  8.   /* USER CODE BEGIN EXTI0_IRQn 0 */
  9.  
  10.         durum++;
  11.         if(durum>3){
  12.                 durum=0;
  13.         }
  14.         ledYak(); //uygulama 2 alt fonksiyon
  15.         HAL_Delay(100);
  16.        
  17.   /* USER CODE END EXTI0_IRQn 0 */
  18.   HAL_GPIO_EXTI_IRQHandler(GPIO_PIN_0);
  19.   /* USER CODE BEGIN EXTI0_IRQn 1 */
  20.  
  21.   /* USER CODE END EXTI0_IRQn 1 */
  22. }
  23.  
  24. //uygulama 2 alt fonksiyon
  25. void ledYak(){
  26.        
  27.         switch(durum){
  28.                 case 0:
  29.                         HAL_GPIO_WritePin(GPIOD, led1_Pin, GPIO_PIN_SET);
  30.                         HAL_GPIO_WritePin(GPIOD, led2_Pin|led3_Pin|led4_Pin, GPIO_PIN_RESET);
  31.                 break;
  32.                
  33.                 case 1:
  34.                         HAL_GPIO_WritePin(GPIOD, led2_Pin, GPIO_PIN_SET);
  35.                         HAL_GPIO_WritePin(GPIOD, led1_Pin|led3_Pin|led4_Pin, GPIO_PIN_RESET);
  36.                 break;
  37.                
  38.                 case 2:
  39.                         HAL_GPIO_WritePin(GPIOD, led3_Pin, GPIO_PIN_SET);
  40.                         HAL_GPIO_WritePin(GPIOD, led1_Pin|led2_Pin|led4_Pin, GPIO_PIN_RESET);
  41.                 break;
  42.                
  43.                 case 3:
  44.                         HAL_GPIO_WritePin(GPIOD, led4_Pin, GPIO_PIN_SET);
  45.                         HAL_GPIO_WritePin(GPIOD, led1_Pin|led2_Pin|led3_Pin, GPIO_PIN_RESET);
  46.                 break;
  47.                
  48.                 default:
  49.                         HAL_GPIO_WritePin(GPIOD, led1_Pin|led2_Pin|led3_Pin|led4_Pin, GPIO_PIN_RESET);
  50.                 break;
  51.         }
  52.  
  53. }
  54. //uygulama 2 alt fonksiyon bitis
  55. //////////////////////////
  56.  
  57. /* USER CODE END 0 */