Microchip Studio und externes RAM

OP #7339901
Lesenswert?

Hi,

ich habe ein Problem, schon vielfach von anderen diskutiert, hilft aber in meinem Fall alles nicht.

Es handelt sich um ein AtmelStudio 7.0 Projekt, das ich vor einigen Jahren entwickelt habe. Es verwendet den AtXmega128A1 sowie externen SRAM (128kB). Compiling lief, der xmega auch. Alles gut.

Nun muss ich das Projekt nochmal anfassen, neuer Rechner, neue IDE, also Microchip Studio.

Projekt importiert, compile -> fail!

address 0x8041b0 of blabla.elf section.data is not within region data usw.

Toll!

Mit diesen Linker Flags hatte es im alten AtmelStudio7 funktioniert:

-Wl,--section-start,.data=0x804000 -Wl,--defsym=__heap_end=0x81ffff

jetzt mit MicrochipStudio nicht mehr. Selbst mit dem Originalen DFP bekomme ich "Memory Overflow"

Dies hier und sämtliche anderen Kombinationen funktionieren einfach nicht: -Wl,--section-start,.data=0x804000 -Wl,--defsym=__heap_end=0x81ffff -Wl,-Tdata,0x804000

Was ist da los? Kennt das jemand?

Grüße Garibaldi

#7340087
Lesenswert?

Hallo,

warum importieren? Projekt öffnen sollte ausreichend sein. Ansonsten prüfen ob alle Projekteinstellungen gleich sind und alle Libs importiert sind. Eigentlich gibt es zwischen AtmelStudio 7.0 und Microchip Studio 7 keinen Unterschied außer der Name. Wie gesagt einfach öffnen sollte okay sein.

#7340127
Lesenswert?

Alte Projekte sollte man mit alte Tools öffnen. Es besteht meist keinen Zwang zum Updated. Daher am besten:

  • Virtuelle Maschine erstellen
  • Tools installieren
  • Maschine archivieren
  • 10 Jahre warten
  • Sich freuen in 10 Jahren dass man das Projekt ohne weiteres öffnen kann

Hinweis: Lizenzen wenn nötig auch archivieren. Am besten auch die Cracks, weil nach X Jahren verschwinden einige Cracks aus dem Internet.

Sonst hast du vermutlich Probleme mit dem Linker script. Hast du da auch die Externe SRAM angegeben?

#7340133
Lesenswert?

Hallo,

okay. Könnte an einem neueren/anderen Controller Headerfile liegen. Hattest du etwas im Controller Headerfile geändert? Unter Tools > Device Pack Manager > kann man die Files auf den aktuellen oder alten Stand bringen. Hast du noch die AS7 Installation? Dann könnte man die verwendete Version vergleichen. Oder direkt reinschauen. C:\Program Files (x86)\Atmel\Studio\7.0\toolchain\avr8\avr8-gnu-toolchain\avr\include\avr Mehr fällt mir aktuell nicht ein.

OP #7340138
Lesenswert?

Andras H. schrieb:

Alte Projekte sollte man mit alte Tools öffnen. Es besteht meist keinen Zwang zum Updated. Daher am besten:

  • Virtuelle Maschine erstellen
  • Tools installieren
  • Maschine archivieren
  • 10 Jahre warten
  • Sich freuen in 10 Jahren dass man das Projekt ohne weiteres öffnen kann

Hinweis: Lizenzen wenn nötig auch archivieren. Am besten auch die Cracks, weil nach X Jahren verschwinden einige Cracks aus dem Internet.

Sonst hast du vermutlich Probleme mit dem Linker script. Hast du da auch die Externe SRAM angegeben?

Hinterher ist man immer schlauer. Bisher war das nicht notwendig. Scheinbar jetzt aber schon. Cracks brauche ich nicht. Ist alles Bildungsbereich.

Ja, irgendetwas mit dem Linkerscript. Es scheint so, als würde irgendwas nicht richtig übernommen. Alle Parameter und Flags und so weiter, sind angegeben wie es sein soll.

Werde jetzt erst mal die ursprüngliche AtmelStudio Version testen.

OP #7340142
Lesenswert?

Veit D. schrieb:

Hallo,

okay. Könnte an einem neueren/anderen Controller Headerfile liegen. Hattest du etwas im Controller Headerfile geändert? Unter Tools > Device Pack Manager > kann man die Files auf den aktuellen oder alten Stand bringen. Hast du noch die AS7 Installation? Dann könnte man die verwendete Version vergleichen. Oder direkt reinschauen. C:\Program Files (x86)\Atmel\Studio\7.0\toolchain\avr8\avr8-gnu-toolchain\avr\include\avr Mehr fällt mir aktuell nicht ein.

Ich habe mit der originalen DFP Version gearbeitet, die ich zuletzt vor ein paar Jahren verwendet habe.

Ja die alte Installation ist noch auf der alten SSD.

Ich hatte die atdfp datei geändert. Das war damals irgendein Workaround. Aber auch der funktioniert nicht mehr.

Es folgt ein Test mit der 7.0.1645. Die letzte Version, die ich genutzt hatte

OP #7340818
Lesenswert?

Oliver S. schrieb:

Michael G. schrieb:

Mit diesen Linker Flags hatte es im alten AtmelStudio7 funktioniert:

-Wl,--section-start,.data=0x804000 -Wl,--defsym=__heap_end=0x81ffff

Das ist lt. der aktuellen avrlibc-Docs auch immer noch richtig.

Aber kommt das aktuelle Microchip Studio nicht mit dem XC8-Compiler? Nutzt du da vielleicht die falsche toolchain?

Oliver

Nein, es ist die AVR-GCC Toolchain. Wenn ich das Projekt als XC8 konvertiere geht gar nix. Mein Projekt ist sozusagen gar nicht XC8 kompatibel.

Es gibt aber neue Erkenntnisse. Ich habe Microchip-Studio deinstalliert, das AS 7.0.1645 installiert und siehe da, mit den ursprünglichen Workarounds geht es wieder.

Also schon mal besten Dank für den Hinweis.

Dennoch würde mich brennend interessieren, was mit dem MCS los ist???

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren