Forum: Mikrocontroller und Digitale Elektronik mit dem IAR compiler ein byte aus dem flash-speicher lesen


von CRuS (Gast)


Lesenswert?

Hallo.

Ich schreibe grad ein Programm für einen AT90USB162 und muss den IAR 
Compiler (IAR Workbench 5.11A) benutzen.

Jetzt will ich ein Byte aus dem Flashspeicher des µP lesen.

Mit GCC ist das ja kein Ding, denn es gibt pgm_read_byte() in der 
pgmspace.

Nur macht man das ja beim IAR mit dem Attribut __flash vor einer 
Variablen.
So habe ich mir gedacht folgendes könnte klappen:

__flash int *leseKopf = (int*)0x2000;
char wert = *leseKopf;

dann meldet der compiler aber:
Error[Be009]: memory attributes not allowed on auto variables or 
parameters

Hat jemand eine Idee wie man ein Byte aus dem Flashspeicher lesen 
könnte?

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Lies Dir doch mal die Fehlermeldung genau durch: Da steht was von "auto 
variables". Das sind Variablen, die auf dem Stack angelegt werden, also 
Variablen, die innerhalb einer Funktion deklariert werden.

Mach 'ne globale Variable draus.

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.