Guten Tag,
ich möchte mit den STM32F103 anfangen und habe eine Grundsatz Frage
nicht verstanden.
Im Referenzmanual steht das die Interrupt Vektoren sammel Vektoren sind
und das das entsprechende Interrupt Flag gelöscht werden muss.
Wenn ich mir mit Cube Mx Code erzeuge und Zb den Timer 2 verwende wird
in der stm32f1xx_it.c erzeugt
1 | void TIM2_IRQHandler(void)
|
2 | {
|
3 | /* USER CODE BEGIN TIM2_IRQn 0 */
|
4 |
|
5 | /* USER CODE END TIM2_IRQn 0 */
|
6 | HAL_TIM_IRQHandler(&htim2);
|
7 | /* USER CODE BEGIN TIM2_IRQn 1 */
|
8 | static uint16_t time;
|
9 | if (++time==500)
|
10 | {
|
11 | HAL_GPIO_TogglePin(LD2_GPIO_Port, LD2_Pin);
|
12 | time=0;
|
13 | }
|
14 | /* USER CODE END TIM2_IRQn 1 */
|
15 | }
|
Nun der Ausgang Pin macht was er tun soll obwohl ich das Interrupt Flag
nicht lösche.
Dann gibt es noch
1 | void HAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef *htim)
|
Auch diese Funktion macht das was ich mir erwarte.
Bitte bringt mir etwas Licht in diesen Junggel
DAnke
Rudolf