Das verstehe wer will...die LED tut nix.
Laut Dokumentation soll die LED leuchten, wenn PA5 HIGH-Pegel hat.
Taktversorgung ist jetzt auch drin.
Soweit ich das sehe hab ich doch alles drin:Code:#include <stdio.h> #include <stdlib.h> #include <stm32f446xx.h> void main(void) { GPIOA->MODER |= (GPIO_MODER_MODER5_0); //A5 => Ausgang GPIOA->OTYPER &= ~(GPIO_OTYPER_OT_5); //A5 0> Push-Pull GPIOA->PUPDR &= ~(GPIO_PUPDR_PUPDR5); //A5 ohne Pullup-Pulldown RCC->AHB1ENR |= RCC_AHB1ENR_GPIOAEN; //Taktversorgung Port A //printf("Einstellung fertig\n"); GPIOA->BSRR |= GPIO_BSRR_BS_5; //Ausgang A5 setzen //printf("LED gesetzt\n"); while(1){ } }
- A5 als Ausgang definiert (MODER 01)
- Outout-Type als Push-Pull definiert (OTYPER 0)
- Pullup/down-Widerstände abgeschaltet (PUPDR 00)
- Taktversorgung einschalten
- PA5 setzen
Danach: Über J-Link mit Target verbinden und dann Download File...
Hat jemand ne Idee was da noch fehlt?
Edit:
Es funktioniert endlich. Die Taktversorgung gehört an den Anfang. Anscheinend werden die Befehle, mit denen die GPIO-Register beschrieben werden, ohne Taktversorgung nicht ausgeführt.
Vielen Dank für die Hilfe bisher, vor allem an dich, Unregistrierter.![]()
Lesezeichen