Ich kam heute mal dazu meinen code zu testen.

Code:
#include <stdio.h>
#include <stdlib.h>
#include <stm32f446xx.h>

/*********************************************************************
*
*       main()
*
*  Function description
*   Application entry point.
*/
void main(void) {
  GPIOA->MODER |= (GPIO_MODER_MODER5_0);    //A5 => Ausgang
  GPIOA->OTYPER |= (GPIO_OTYPER_OT_5);      //A5 0> OpenDrain
  GPIOA->PUPDR &= ~(GPIO_PUPDR_PUPDR5);     //A5 ohne Pullup-Pulldown

  printf("Einstellung fertig\n");

  GPIOA->ODR |= (GPIO_ODR_ODR_5);           //Ausgang A5 setzen
 
  printf("LED gesetzt\n");

  while(1){
  }
}
Jetzt müßte die LED an A5 leuchten. Tut sie aber nicht. Hab ich noch was vergessen oder einen Fehler gemacht?
Wenn ich den Debugger starte, kommen die printf-Meldungen. Der J-Link ist auch verbunden. Sagt Embedded Studio. Nurdie LED tut nix, wie gesagt...