Advertisement
Guest User

Untitled

a guest
Nov 18th, 2018
88
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.01 KB | None | 0 0
  1. //main
  2. uint8_t zapal = 0;
  3. uint8_t pushCount = 0;
  4.  
  5. while (1)
  6.   {
  7.       if(zapal)
  8.           HAL_GPIO_WritePin(GPIOA, GPIO_PIN_5, GPIO_PIN_SET);
  9.       else
  10.           HAL_GPIO_WritePin(GPIOA, GPIO_PIN_5, GPIO_PIN_RESET);
  11.   }
  12.  
  13. //sysTick
  14.  
  15. extern uint8_t pushCount;
  16. extern uint8_t zapal;
  17. uint32_t time_ms = 0;
  18.  
  19. void SysTick_Handler(void)
  20. {
  21.   /* USER CODE BEGIN SysTick_IRQn 0 */
  22.   /* USER CODE END SysTick_IRQn 0 */
  23.   HAL_IncTick();
  24.   HAL_SYSTICK_IRQHandler();
  25.   /* USER CODE BEGIN SysTick_IRQn 1 */
  26.   time_ms++;
  27.   if(!HAL_GPIO_ReadPin(GPIOC, GPIO_PIN_13))
  28.   {
  29.  
  30.       pushCount++;
  31.  
  32.       if(pushCount > 3)
  33.           pushCount = 1;
  34.   }
  35.  
  36.   if(pushCount == 1 && time_ms > 500) // 1Hz
  37.   {
  38.       if(zapal)
  39.           zapal = 0;
  40.       else
  41.           zapal = 1;
  42.       time_ms = 0;
  43.   }
  44.  
  45.   if(pushCount == 2 && time_ms > 250) // 2Hz
  46.   {
  47.       if(zapal)
  48.           zapal = 0;
  49.       else
  50.           zapal = 1;
  51.       time_ms = 0;
  52.   }
  53.  
  54.   if(pushCount == 3 && time_ms > 125) // 4Hz
  55.   {
  56.       if(zapal)
  57.           zapal = 0;
  58.       else
  59.           zapal = 1;
  60.       time_ms = 0;
  61.   }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement