Forum: Compiler & IDEs Portierung AVR231 (AES Bootloader) in GCC


von Mark M. (mmmoor)


Lesenswert?

Hallo, vielleicht kann mir jemand helfen,

ich versuche den AES Bootloader AVR231 vom IAR auf den GCC Compiler zu
portieren. Wie kann ich die Feherlmeldung von GCC "parse error before
' * ' token" vermeiden, die z.B. bei folgender Zeile erscheint:

extern int  spmReadWord(unsigned char APPFLASH *addr);

Vielen Dank
Mark

von Andreas S. (andreas) (Admin) Benutzerseite


Lesenswert?

GCC kennt den Typ APPFLASH nicht. Vermutlich soll hier ein Zeiger auf
eine Flash-Adresse übergeben werden; wie man das beim AVR-GCC macht
sollte im AVR-GCC-Tutorial ausführlich beschrieben sein.

von Mark M. (mmmoor)


Lesenswert?

ja, es scheint daran zu liegen, vielen Dank für den Hinweis schonmal.

Nun versuche ich gerade herauszufinden, was "APPFLASH *   " unter IAR
bewirken soll, um es in GCC nachzubilden. Weiß jemand etwas darüber?

Grüsse
Mark

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Steht das nicht in einer der Dateien der AN231 selbst?  Ich glaube
nicht, dass APPFLASH ein Standardname für den IAR wäre.

von Mark M. (mmmoor)


Lesenswert?

stimmt. Vielen Dank. Der Hinweis hat mir wieder weitergeholfen...

es gibt folgende Zeile:
  #define APPFLASH __flash

demnach wird APPFLASH also mit __flash besetzt

__flash ist IAR-spezfisch ein Keyword zu einer Variablen mit folgender
Description: < 32KB objects in CODE address range 0x0–0xFFFF

Wenn ich also statt IAR den GCC nehme, was muss ich dann mit __flash
machen? Bzw. wie finde ich das raus?

Beste Grüsse
Mark

von Andreas S. (andreas) (Admin) Benutzerseite


Lesenswert?

Flash-Variablen werden im AVR-GCC anders gehandhabt als im IAR. Wie das
geht steht im AVR-GCC-Tutorial bzw. in der avr-libc Doku.

von Mark M. (mmmoor)


Lesenswert?

OK, vielen Dank, ich schau mal, was ich rausfinde und melde mich wahrsch
morgen wieder.

Mark

von Daniel B. (khani)


Lesenswert?

Hallo Mark,

ich habe mich bisher nicht genauer mit dem AES-Bootloader beschäfitgt.
Ich habe bisher nur den AVR109-Bootloader von GCC nach IAR portiert.
Ich möchte Dir den Thread
http://www.mikrocontroller.net/forum/read-2-215045.html#new
empfehlen, denn dort habe ich Problem beschrieben, was Dir unter
Umständen bei Deiner Tätigkeit auch unterkommt. Wenn Du möchtest, dann
kann ich Dir auch mal den portierten Bootloader (das heißt die
source-files) zukommen lassen. Ich vermute, die essentiellen Teile beim
Lesen und Schreiben des Flashs sind da ähnlich gestrickt - und warum das
Rad neu erfinden, wenn's schon jemand gemacht hat...

MfG, Daniel.

von Mark M. (mmmoor)


Lesenswert?

vielen Dank für den Hinweis, ich kann zur Minuate da gerade nicht
einsteigen. Natürlich habe ich nicht den Ehrgeiz, das Problem nochmal
zu lösen, wenn es schon eine Lösung gibt. Ich schaue nachher in den
empfohlenen Thread.

Wenn Du mir ein Source zur Verfügung stellen kannst, liebend
gerne!Brauchst Du meine Email-Adresse, so hänge doch an meinen Nickname
einfach das @ und gmx.net.

Beste Grüße
Mark

von Christoph (Gast)


Lesenswert?

Hallo Daniel,


kannst du mir den Source schicken von dem Portiertem AVR901? Ich passe
gerade den avr231 an und würde bisschen input benötigen beim Portieren.
Wäre nett die Email ist xchrigul@aol.com.


Grüße


Christoph

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.