STM32 EXTI auf Pin B12

Gast #2627516
Hallo,

ich versuche gerade mit dem STM32 Development Board einen Externen 
Interrupt zu Initialisieren auf Port B 12
hier der Code
1
  GPIO_InitTypeDef GPIO_InitStructure;
2
  EXTI_InitTypeDef EXTI_InitStructure;
3
  NVIC_InitTypeDef NVIC_InitStructure;
4

5

6
  /* Enable the BUTTON Clock */
7
  RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB | RCC_APB2Periph_AFIO, ENABLE);
8

9
  /* Configure Button pin as input floating */
10
  GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN_FLOATING;
11
  GPIO_InitStructure.GPIO_Pin =  GPIO_Pin_12;
12
  GPIO_Init(GPIOB, &GPIO_InitStructure);
13

14
    /* Connect Button EXTI Line to Button GPIO Pin */
15
    GPIO_EXTILineConfig(GPIO_PortSourceGPIOB, GPIO_PinSource12);
16

17
    /* Configure Button EXTI line */
18
    EXTI_InitStructure.EXTI_Line = EXTI_Line12;
19
    EXTI_InitStructure.EXTI_Mode = EXTI_Mode_Interrupt;
20

21
    EXTI_InitStructure.EXTI_Trigger = EXTI_Trigger_Rising;
22

23
    EXTI_InitStructure.EXTI_LineCmd = ENABLE;
24
    EXTI_Init(&EXTI_InitStructure);
25

26
    /* Enable and set Button EXTI Interrupt to the lowest priority */
27
    NVIC_InitStructure.NVIC_IRQChannel = EXTI0_IRQn;
28
    NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 0x0F;
29
    NVIC_InitStructure.NVIC_IRQChannelSubPriority = 0x0F;
30
    NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;
31

32
    NVIC_Init(&NVIC_InitStructure);
33

34
void EXTI0_IRQHandler(void)
35
{
36
    /* Toggle LED3 */
37
     STM32vldiscovery_LEDToggle(LED3);
38

39
    /* Clear the User Button EXTI line pending bit */
40
    EXTI_ClearITPendingBit(EXTI_Line1);
41
}

Leider passiert bei einer Pegeländerung an Pin B12 gar nix.
Weiß jemand wo der Fehler ist?
Gast #2627532
ich glaube du hast den falschen IRQ Handler, der EXTI0_IRQHandler ist ja 
nur für PINx.0
Für die ersten paar Pins gibt es jeweils einen Handler, ich glaube 0-4 
oder so, bei den höheren sind dann mehrere Pins auf den selben Handler 
gemappt ich glaube 5-9 und 10-15 oder so.

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 14 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.