Forum: Mikrocontroller und Digitale Elektronik STM32: Code wird nur im Debugger aufgerufen


von Christin (Gast)


Angehängte Dateien:

Lesenswert?

Hallo :)

Ich prüfe in meiner Callback-Routine ob im Statusregister das 
Interrupt-Bit für UIF gesetzt wurde. Jetzt ist das Problem ein bisschen 
schwer zu erklären.

Lasse ich den Code normal laufen, wird die if-Anweisung nicht behandelt 
und i nicht hochgezählt, der Breakpoint B in BreakB nie aufgerufen.

Setze ich hingegen auch Breakpoint A (BreakAB), wird dieser zyklisch 
aufgerufen und danach auch Breakpoint B und i inkrementiert.

Hat jemand eine Erklärung dafür? Danke

(STM32CubeIDE und STM32G032)

von Programmierer (Gast)


Lesenswert?

Kann es sein dass die HAL-Library das UIF Flag bereits abfragt und 
löscht? Wenn du den Breakpoint setzt läuft der Timer sofort nochmal über 
und das Flag wird gesetzt bevor du es abfragst. Du brauchst die Abfrage 
also gar nicht.

von Christin (Gast)


Lesenswert?

Hmmm, damit hast du wahrscheinlich Recht. Jetzt hatte ich damit schon 
wirklich Stunden verbracht, Danke o.O.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.