Forum: Mikrocontroller und Digitale Elektronik AVR32 Flash lesen


von Bruno K. (Gast)


Lesenswert?

Hi,

ich würde gerne Bytes aus dem Flash lesen. Gibt es da auch eine Referenz 
für AVR32 Mikrocontroller? Habe bisher nichts finden können.

Im AVR Tutorial ist die Rede von einem Z-Pointer (R30 und R31) und im 
AVR-GCC-Tutorial wird auf die Makros der avr-libc (pgmspace.h) und 
Embedded-C (__flash) verwiesen.

Leider weiß ich nicht welche Register beim den AVR32 Mikrocontrollern 
für den Z-Pointer o.ä. verwendet werden bzw. ob es solche Register beim 
AVR32 auch gibt. Außerdem ist mir auch nicht bekannt, wie man den 
Qualifier __flash richtig verwendet. Wenn ich __flash so verwende wie im 
AVR-GCC-Tutorial verwende gibt es eine Fehlermeldung, die aussagt das 
der Compiler nichts mit __flash anfangen kann

" expected '=', ',', ';', 'asm' or '__attribute__' before 'int' "

Im Makefile wird aber festgelegt, dass die Version gnu99 verwendet wird. 
Also kann es auch nicht der Fehler sein.

Würde mich über jeden Hinweis freuen!

Grüße
Bruno

von Rainer V. (rudi994)


Lesenswert?

Von AVR32 kenne ich nun gar nichts, habe aber mal von atmel.com folg. 
PDF (4.9 MB): AVR32 - Architecture Document - doc32000.pdf

Kein X-, Y- oder Z-Register (R26-R31) wie beim 8-Bit AVR zu finden, auch 
keine Befehle wie LPM oder SPM für Load/Store Program Memory. Da ist von 
einer anderen Architektur die Rede, von Systemregistern und 16 allgem. 
Registern inkl. PC, Linker Register, SP und SREG. Falls es das richtige 
Dokument ist, gibt es da jede Menge zu lesen. LG

von Bruno K. (Gast)


Lesenswert?

Danke für die Mühe Rainer!
Das habe ich mir auch schon angeguckt. Ist (zumindest für mich) auf die 
schnelle nicht sehr hilfreich. Damit muss man sich schon etwas länger 
beschäftigen.
Ich habe es jetzt einfach über einen Zeiger gemacht, der auf die Adresse 
zeigt an denen meine Daten im Flash abgelegt sind. Das Schreiben der 
Daten auf den Flash ist mit den Funktionen vom ASF recht einfach.

Trotzdem danke für die Hilfe!

Grüße
Bruno

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.