Hallo zusammen,
nachdem ich hier Anfang der Woche noch fröhlich Fragen gestellt und mit
meinem STM32F411 experimentiert habe, habe ich nun ein Problem:
Ich hatte gestern Abend überraschend nach einer Änderung das Problem,
dass der ST Link nicht mehr per JTAG mit dem STM32F411 reden konnte.
Ich musste dann den STM32F411 in den Bootloader starten, den flash (vom
F411) löschen und konnte erst dann wieder eine neue Version falshen.
Ich habe nun herausgefunden, dass das Problem immer dann auftritt, wenn
ich in das Register GPIOA_MODER schreibe.
Wenn ich also PA5 (User LED beim Nucleo64) mit
1 | GPIOA->MODER |= GPIO_MODER_MODE5_0; // set PA5 as output
|
als output definieren will, habe ich das Problem. Dabei ist es egal,
welches Bit gesetzt wird.
Andere Ports wie z.B. PORTB oder C funktionieren wie sie sollen.
Zusätzlich ist mir ein weiteres Problem aufgefallen: Wenn ich in irgend
ein Register von TIM2,3 oder 4 (andere Timer habe ich jetzt nicht
ausprobiert) schreibe, stehen die Werte später nicht im Register. Das
heißt, wenn ich die Register auslese bekomme ich immer eine 0 und
Funktionen wie PWM funktionieren nicht.
Hatte jemand von euch schon einmal so ein Problem? Kann es sein, dass
sich der Controller (oder Teile von ihm) einfach verabschiedet hat?
Bin über jede Antwort dankbar.
Gruß,
Simon