ASM Flash-Speicher reservieren

Gast #3592292
Lesenswert?
• ▲
▼
Guten Morgen Leute,

ich hab leider ein kleines Problem, und zwar will ich im Flash, mir eine 
Art Struktur aufbauen, die aber zum Zeitpunkt der Kompilierung keine 
Werte enthält.

Ich hatte das schöne Schlüsselwort 'space' gefunden, das mir den 
Speicher reservieren sollte. freu und fertig
1
.sect "MyStrukt"
2

3
.def _Checksum
4
_Checksum:
5
   .space 010h       // reserv. 16 Bit -> 1 Wort
6

7
.def _Size
8
_Size:
9
   .space 010h       // reserv. 16 Bit -> 1 Wort

Leider, jetzt komms: reserviert 'space' den Speicher zwar, aber 
zusätzlich beschreibt es ihn auch (fill with '0')!!!!

Wenn ich jetzt die Werte von außen beschreiben möchte, geht das nicht 
mehr da der Speicher schon programmiert ist!
Mist, dumm gelaufen.

Was ist dann das richtige Schlüsselwort in ASM um Flash-Speicher frei zu 
halten?

Hier geht es um einen TMS320F28xx und dem CCS.(irgendwo ist da auch was 
vom GCC drin)
1
.sect "MyStrukt"
2

3
.def _Checksum
4
_Checksum:
5
   .word 0xFFFF      // reserv. 1 Wort
6

7
.def _Size
8
_Size:
9
   .word 0xFFFF      // reserv. 1 Wort

Wäre das so schon ausreichend?

Stephan
Gast #3592336
Lesenswert?
• ▲
▼
Hi,

ja im Linker CMD File wird die Section 'MyStrukt' auf einen passenden 
Speicher gelegt. Im High-Level Bereich ist es hinterher auch eine 
C-Struktur!

Da Projekt läuft hier über einen Pre- und Post-Process wo mit irgend 
welchen Script-Sprachen auf einige Files zugegriffen wird.
Leider kann da nur ein ASM-File genutzt werden. (Hat Chef gesagt!)

Wie sieht denn ein Speicher-Layout im Linker File aus?
 - mit globalen Symbolen
 - mit und ohne Werten

In der Struktur sind 135 Worte reserviert die mit verschieden Werte bzw 
teilweise ohne Werte befüllt sind.

Ich wollte da so wenig wie möglich von Hand was rechnen lassen und dem 
Compiler + Linker die Arbeit machen lassen.
Gast #3592337
Lesenswert?
• ▲
▼
Oliver S. schrieb:
> Nach allgemeinem Verständniss steht "Flash" für eine Speicherbauart, die
> mehrfach beschreib- und löschbar ist. Irgendwas passt da nicht
> zusammen...

ja, ist halt so.

Beim TMS kann man nur Sectoren löschen!
Beim Schreiben ist der flexibler da lässt er sogar einzelne Worte zu.

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.