AVR-GCC: Array wird nicht initialisiert

Gast #4263444
Lesenswert?
• ▲
▼
Hi,

ich nutze in meinem Programm eine Tabelle, welche in einem Headerfile 
protocol.h initialisiert wird:
1
PROGMEM const unsigned short speedMap[1974]={1,2,2,3,3,3,...};

protocol.h wird natürlich auch in meiner main.c includiert. Wenn ich den 
Krempel jetzt aber im AVR-studio-Simulator laufen lasse, dann ist das 
Array komplett leer, sprich mit 0 initialisiert.

Woran kann das liegen? Wo bleiben meine Tabellenwerte?

Danke!
Moderator Persönliche Seite #4263450
Lesenswert?
• ▲
▼
Sortland schrieb:
>
1
PROGMEM const unsigned short speedMap[1974]={1,2,2,3,3,3,...};

Syntax error.

> protocol.h wird natürlich auch in meiner main.c includiert.

Nur dort?

> Wenn ich den
> Krempel jetzt aber im AVR-studio-Simulator laufen lasse, dann ist das
> Array komplett leer, sprich mit 0 initialisiert.

Leider sieht man hier nur eine kaputte Zeile, nicht den anderen 
"Krempel".

Erstelle bitte ein Minimalbeispiel, um das Problem zu reproduzieren.

Compiler-Version?
Moderator Persönliche Seite #4264959
Lesenswert?
• ▲
▼
Stefan K. schrieb:
> Wenn das .h File in mehreren Quellen eingebunden wird, wird speedMap[]
> entsprechend oft angelegt.

Nicht, solange nicht auch noch "static" davor steht.

Sinnvoll ist es trotzdem nicht, das im Headerfile anlegen zu wollen.

Ansonsten würde ich Johanns Rat folgen und das auf aktuellen Compilern
auf __flash umstellen.  Der PROGMEM-Kram war ein Notnagel, um die Zeit
zu überbrücken, bis Johann eine richtige Implementierung im Compiler
realisiert hat. :)

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.