Forum: Mikrocontroller und Digitale Elektronik STM32F4 & Keil Debugmode: cannot acces memory


von Samuel J. (capstrovor)


Lesenswert?

Hallo

Ich steige gerade von AVR auf ARM um und nutze dazu das STM32F401 mit 
Keil (32k limitierte Version).
Wenn ich das Testprojekt "Blinky" öffne kann ich es ohne Probleme 
flashen und debuggen.

Bei meinem ersten Programm habe ich aber Schwierigkeiten:
Es ist nicht wirklich groß, ich schreibe nur einen Wert in ein Register 
und gehe dann in eine Endlosschleife:
1
  GLOBAL Reset_Handler
2
  AREA Reset, CODE, READONLY
3
  ENTRY
4
  
5
Reset_Handler
6
  ldr r0, =0x11
7
  
8
stop
9
  B stop
10
  
11
  END

Das builden und das flashen funktioniert, aber wenn ich im Debugmode auf 
"Step" drücke, erscheint im Commandfenster immer:
cannot acces memory.

Habe jetzt schon 10 Mal meine Projekteinstellungen mit denen von Blinky 
abgeglichen. Ich habe auch schon das Blinkyprojekt kopiert, alle Files 
rausgelöscht und ein asm-File erstellt, meinen Code reinkopiert und habe 
das ge-debuged, aber es erscheint immer das gleiche Problem.

Kann mir da jemand weiterhelfen?

mfg

von adenin (Gast)


Lesenswert?

Pack doch mal dein ganzes Projekt in eine zip un lad es hoch, dann kann 
man sich selbst ein Bild davon machen, wo es hängt.

von Steffen R. (steffen_rose)


Lesenswert?

Samuel J. schrieb:
> Das builden und das flashen funktioniert, aber wenn ich im Debugmode auf
> "Step" drücke, erscheint im Commandfenster immer:
> cannot acces memory.

Wie ist der Zustand, bevor Du Step drückst? Steht der Programmcounter 
auf dem Reset_Handler?

Die Meldung kommt u.a. wenn das Programm abstürzt. Würde bedeuten, dass 
dein Reset_handler nicht eingebunden wurde.

Startup File korrekt?
Mapping file sinnvoll?

Oder du hast einfach nur ein Debugfenster offen, welches aus einem nicht 
existierenden Bereich etwas anzeigen will.



> Ich habe auch schon das Blinkyprojekt kopiert, alle Files
> rausgelöscht und ein asm-File erstellt, meinen Code reinkopiert und habe
> das ge-debuged, aber es erscheint immer das gleiche Problem.

Dann hast Du auch das startup-File gelöscht? Dann fehlt die 
Einsprungadresse. Diese steht in der Vectortabelle.

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.