stm32f0xx_it.c


1
/* USER CODE BEGIN Header */
2
/**
3
  ******************************************************************************
4
  * @file    stm32f0xx_it.c
5
  * @brief   Interrupt Service Routines.
6
  ******************************************************************************
7
  * @attention
8
  *
9
  * <h2><center>&copy; Copyright (c) 2021 STMicroelectronics.
10
  * All rights reserved.</center></h2>
11
  *
12
  * This software component is licensed by ST under Ultimate Liberty license
13
  * SLA0044, the "License"; You may not use this file except in compliance with
14
  * the License. You may obtain a copy of the License at:
15
  *                             www.st.com/SLA0044
16
  *
17
  ******************************************************************************
18
  */
19
/* USER CODE END Header */
20
21
/* Includes ------------------------------------------------------------------*/
22
#include "main.h"
23
#include "stm32f0xx_it.h"
24
/* Private includes ----------------------------------------------------------*/
25
/* USER CODE BEGIN Includes */
26
/* USER CODE END Includes */
27
28
/* Private typedef -----------------------------------------------------------*/
29
/* USER CODE BEGIN TD */
30
31
/* USER CODE END TD */
32
33
/* Private define ------------------------------------------------------------*/
34
/* USER CODE BEGIN PD */
35
36
/* USER CODE END PD */
37
38
/* Private macro -------------------------------------------------------------*/
39
/* USER CODE BEGIN PM */
40
41
/* USER CODE END PM */
42
43
/* Private variables ---------------------------------------------------------*/
44
/* USER CODE BEGIN PV */
45
46
/* USER CODE END PV */
47
48
/* Private function prototypes -----------------------------------------------*/
49
/* USER CODE BEGIN PFP */
50
51
/* USER CODE END PFP */
52
53
/* Private user code ---------------------------------------------------------*/
54
/* USER CODE BEGIN 0 */
55
56
/* USER CODE END 0 */
57
58
/* External variables --------------------------------------------------------*/
59
extern PCD_HandleTypeDef hpcd_USB_FS;
60
extern TIM_HandleTypeDef htim3;
61
/* USER CODE BEGIN EV */
62
63
/* USER CODE END EV */
64
65
/******************************************************************************/
66
/*           Cortex-M0 Processor Interruption and Exception Handlers          */
67
/******************************************************************************/
68
/**
69
  * @brief This function handles Non maskable interrupt.
70
  */
71
void NMI_Handler(void)
72
{
73
  /* USER CODE BEGIN NonMaskableInt_IRQn 0 */
74
75
  /* USER CODE END NonMaskableInt_IRQn 0 */
76
  /* USER CODE BEGIN NonMaskableInt_IRQn 1 */
77
  while (1)
78
  {
79
  }
80
  /* USER CODE END NonMaskableInt_IRQn 1 */
81
}
82
83
/**
84
  * @brief This function handles Hard fault interrupt.
85
  */
86
void HardFault_Handler(void)
87
{
88
  /* USER CODE BEGIN HardFault_IRQn 0 */
89
90
  /* USER CODE END HardFault_IRQn 0 */
91
  while (1)
92
  {
93
    /* USER CODE BEGIN W1_HardFault_IRQn 0 */
94
    /* USER CODE END W1_HardFault_IRQn 0 */
95
  }
96
}
97
98
/**
99
  * @brief This function handles System service call via SWI instruction.
100
  */
101
void SVC_Handler(void)
102
{
103
  /* USER CODE BEGIN SVC_IRQn 0 */
104
105
  /* USER CODE END SVC_IRQn 0 */
106
  /* USER CODE BEGIN SVC_IRQn 1 */
107
108
  /* USER CODE END SVC_IRQn 1 */
109
}
110
111
/**
112
  * @brief This function handles Pendable request for system service.
113
  */
114
void PendSV_Handler(void)
115
{
116
  /* USER CODE BEGIN PendSV_IRQn 0 */
117
118
  /* USER CODE END PendSV_IRQn 0 */
119
  /* USER CODE BEGIN PendSV_IRQn 1 */
120
121
  /* USER CODE END PendSV_IRQn 1 */
122
}
123
124
/**
125
  * @brief This function handles System tick timer.
126
  */
127
void SysTick_Handler(void)
128
{
129
  /* USER CODE BEGIN SysTick_IRQn 0 */
130
131
  /* USER CODE END SysTick_IRQn 0 */
132
  HAL_IncTick();
133
  /* USER CODE BEGIN SysTick_IRQn 1 */
134
135
  /* USER CODE END SysTick_IRQn 1 */
136
}
137
138
/******************************************************************************/
139
/* STM32F0xx Peripheral Interrupt Handlers                                    */
140
/* Add here the Interrupt Handlers for the used peripherals.                  */
141
/* For the available peripheral interrupt handler names,                      */
142
/* please refer to the startup file (startup_stm32f0xx.s).                    */
143
/******************************************************************************/
144
145
/**
146
  * @brief This function handles TIM3 global interrupt.
147
  */
148
void TIM3_IRQHandler(void)
149
{
150
  /* USER CODE BEGIN TIM3_IRQn 0 */
151
152
  /* USER CODE END TIM3_IRQn 0 */
153
  HAL_TIM_IRQHandler(&htim3);
154
  /* USER CODE BEGIN TIM3_IRQn 1 */
155
156
 //ab hier selbst eingefügt
157
    while (HAL_GPIO_ReadPin(GPIOA, GPIO_PIN_0) == 0)
158
    {
159
      //Zustand: schalter aus, knopf nicht gedrückt
160
    }
161
    i++;
162
    //hier aktueller uhrzeit Systickcount ausgeben
163
    
164
    if (i >= 2)
165
      {
166
        i = 0;
167
      }
168
    //set_blaueTaste(i);
169
    tic = HAL_GetTick();
170
    while (HAL_GPIO_ReadPin(GPIOA, GPIO_PIN_0) == 1)
171
    {
172
      //hier Knopf gedrückt
173
      //bspw. Start und Pause
174
     
175
    } // hier die zweite uhrzeit notieren 
176
      toc = HAL_GetTick();
177
     uint32_t a = toc - tic;
178
     if(a < 1200){
179
      set_blaueTaste(i);
180
     }else if (a >= 1200){
181
        set_blaueTaste1(i);
182
     }else {
183
184
        HAL_GPIO_WritePin(GPIOA,GPIO_PIN_0,GPIO_PIN_RESET);
185
        HAL_GPIO_WritePin(GPIOC,GPIO_PIN_6,GPIO_PIN_RESET);
186
        HAL_GPIO_WritePin(GPIOC,GPIO_PIN_7,GPIO_PIN_RESET);
187
        HAL_GPIO_WritePin(GPIOC,GPIO_PIN_8,GPIO_PIN_RESET);
188
        HAL_GPIO_WritePin(GPIOC,GPIO_PIN_9,GPIO_PIN_RESET);
189
     }
190
 
191
192
193
194
195
196
  /* USER CODE END TIM3_IRQn 1 */
197
}
198
199
/**
200
  * @brief This function handles USB global interrupt / USB wake-up interrupt through EXTI line 18.
201
  */
202
void USB_IRQHandler(void)
203
{
204
  /* USER CODE BEGIN USB_IRQn 0 */
205
206
  /* USER CODE END USB_IRQn 0 */
207
  HAL_PCD_IRQHandler(&hpcd_USB_FS);
208
  /* USER CODE BEGIN USB_IRQn 1 */
209
210
  /* USER CODE END USB_IRQn 1 */
211
}
212
213
/* USER CODE BEGIN 1 */
214
215
/* USER CODE END 1 */
216
/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/