mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik [AVR] IAR4.30 Fehler e18


Autor: Marco S. (masterof)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo

Ich Habe ein Problem mit dem IAR-Compiler.
Wenn ich das Application Notes AVR231 mit dem CompilerIAR4.30 
DemoVersion
 für den ATmega2561 comperlieren lasse erzeugt er mir follgende 
Fehlermelung:

     IAR Universal Linker V4.60I/386
     Copyright 1987-2007 IAR Systems. All rights reserved.
Error[e18]: Range error,
 Number out of range. Valid range is -128 (-0x80) to 255 (0xFF).
 File: C:\Micha SIB FFS\Bootloader Beta2\aes.c, Line: 285
 Source: LDI     R31, (kTable) >> 8
  Where $ = KeyExpansion + 0x22  [0x3F43A]
            in module "aes" (C:\Micha SIB FFS\Bootloader 
Beta2\Release\Obj\aes.r90),
            offset 0x22 in segment part 32, segment FARCODE
  What: 8 ? (kTable >> 1 & 0x7FFFFFFF) >> 8 - 1 : kTable [0x3F0]
  Allowed range: 0xFFFFFF01 - 0xFF
  Operand: kTable [0x3f004]
           in module aes (C:\Micha SIB FFS\Bootloader 
Beta2\Release\Obj\aes.r90),
           Offset 0x0 in segment part 8, segment NEAR_F

Wenn ich ihn aber für den ATmega64 comperlieren lasse erzeugt er mir 
keine Fehlermeldung.

Habe die AES.h, ASE.c und nochmal die Fehlermeldung in einer Zip 
angehängt.

Hoffe ihr könnt mir helfen.

Gruß Marco

Autor: Rufus Τ. Firefly (rufus) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das wird wohl daran liegen, daß der Mega2561 mehr als 128 kByte 
FlashROM, also mehr als 64 kiWorte Codespeicher hat. Das wiederum 
bedeutet, daß zur Adressierung dieses größeren FlashROM-Bereichs andere 
Adressierungstechniken verwendet werden müssen, als für die bisherigen 
AVRs bis einschließlich zum Mega128.


"comperlieren"? Schönes Wort.

Autor: Marco S. (masterof)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke für den Tip.
Werde mal es entsprechen Ändern und dann melden ob es geklappt hat.

Gruß Marco

Autor: Marco S. (masterof)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Der Fehler liegt sehr warscheinlich beim IAR da auch das komperlieren 
auch testeweise mit ATmega128 nicht geht, und der ist schon bei dem 
Application Notes von Atmel da bei. Der Compiler hat probleme mit dee 
raprozässor __farflash und __hugeflash.

Autor: Marco S. (masterof)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Habe das Programm jetzt so weit abgeändert jetzt gibt es die meldung:
 Fatal Error[e72]: Segment NEAR_ID must be defined in a segment 
definition option (-Z, -b or -P) aus. Hoffe irgent jemand hat eine gute 
Idee.

Autor: Marco S. (masterof)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Fehler gefunden.
Das Projekt war verstellt.
Habe jetzt das Projet vom Mega128 genommen und die haeder m2561.h statt 
m128.h und _MEMSPM_ gelöscht und dann ging der Bootloader.
Und folgende werte im Linker eingestellt
BOOT_SIZE 1000
FLASH_SIZE 40000
IVT_SIZE CC
RAM_SIZE 2000
RAM_BASE 200
APP_SRAM_USAGE 41E

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
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.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.