Hallo zusammen, arbeite/bastle hier am STM32(STM32Discovery-Board) und habe folgendes Problem: Da ich (viele) Werte nichtflüchtig speichern will, habe ich mich in die Flash-Thematik eingearbeitet und kann bereits Daten im Flash im Sinne eines EEPROMs abspeichern. Nun, nach etwaigen Try&Error-Versuchen muss ich leider feststellen, dass das TrueStudio Lite von Atollic während des debug-Prozesses bei 82% stehen bleibt und nicht/nichts weitermacht. Console liefert folgenden Text: Reading symbols from C:\[...]\021_Projektname.elf...done. source -v C:\[...]\truestudio7884387170562191701gdbscript +target extended-remote localhost:61234 0x08001c4a in NVIC_Init (NVIC_InitStruct=0x0) at ..\Libraries\STM32F10x_StdPeriph_Driver\src\misc.c:143 143 } ...womit ich nicht wirklich was anfangen kann! Idee: an einem anderen PC Atollic mit einem Standard-Programm: "Blinkende LEDs" (default-Projekt des Discovery-Boards) ausprobieren. Interessanterweise hat es Atollic bis zur Debug-View geschafft, bricht jedoch ab. Ein Blick auf "show dissambly" liefert folgende Liste: ......... ... 08001bf6: Cannot access memory at address 0x8001c4a 08001bf7: Cannot access memory at address 0x8001bf6 08001bf8: Cannot access memory at address 0x8001c4a 08001bf9: Cannot access memory at address 0x8001bf8 08001bfa: Cannot access memory at address 0x8001c4a ......... ... usw... Daten, die in den Flash abgelegt wurden habe ich ab Adresse 0x08020000 festgelegt. Daher nehme ich an, dass dieses nicht unbedingt mit der o.g. Fehlermeldung zu tun haben muss/kann?! Der Vollständigkeit halber sei noch erwähnt, dass ich den STM32103RE und nicht den defaultmäßig verbauten STM32100FB verwende. Grund ist die RAM-Größe. Kennt jemand so ein Fehlerverhalten bei Atollic? Die SuFu hier hat u.A. auf ein Thread gezeigt, wo ähnliche Symptome zu erkennen waren, der TO führte dies auf einen Kurzschluss zurück, was ich in meinem Fall definitiv ausschließen kann. (vgl. Beitrag "STM32 JTAG-Problem mit Atollic TrueSTUDIO") Letzte Woche hatte ich das gleiche Verhalten beobachten können und habe, um Zeit zu sparen, einfach eine neue MCU gelötet :) und gleich nach einer Woche das gleich Verhalten (82% beim debug). Das kann nicht sein, dass innerhalb einer Woche 10k cycles geschrieben worden sind. Bedeutet "Cannot access memory at address [...]", dass der Speicher kaputt ist, oder dass wirklich NUR nicht darauf zugegriffen werden kann?! Auf eure Reaktionen/Antworten bin ich gespannt. Danke im Voraus kyrel
kyrel schrieb: > Der Vollständigkeit halber sei noch erwähnt, dass ich den STM32103RE und > nicht den defaultmäßig verbauten STM32100FB verwende. Grund ist die > RAM-Größe. Die Typen gibt es beide nicht... Wenn du beim komilieren und Linken nicht mit den richtigen Adressen (=> richtiger Chip) arbeitest, ist es wohl auch kein Wunder. kyrel schrieb: > 08001bf6: Cannot access memory at address 0x8001c4a > 08001bf7: Cannot access memory at address 0x8001bf6 > 08001bf8: Cannot access memory at address 0x8001c4a > 08001bf9: Cannot access memory at address 0x8001bf8 > 08001bfa: Cannot access memory at address 0x8001c4a > ......... ... > usw... > > Daten, die in den Flash abgelegt wurden habe ich ab Adresse 0x08020000 Soll mit dem letzten Satz die "EEPROM-Ersatzadresse" gemeint sein? Wie hast du denn das Linking gemacht? kyrel schrieb: > Bedeutet "Cannot access memory at address [...]", dass der Speicher > kaputt ist, oder dass wirklich NUR nicht darauf zugegriffen werden > kann?! Ich würde vermuten, daß wirklich physikalisch nicht gelesen werden kann. Denn wenn er lesen könnte, würde es ja "nur" einen Interpretationsfehler der gelesenen Daten zur Folge haben. kyrel schrieb: > Das kann nicht sein, > dass innerhalb einer Woche 10k cycles geschrieben worden sind. Soll der ""EEPROM-Ersatz" nicht erst ab 0x08020000 losgehen?
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.