mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik IAR, AVR, hex file, multiple address spaces (Errror e133)


Autor: Philipp (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

hab da ein Problem und komme irgendwie nicht weiter. Suche bei Google 
und hier im Forum hat leider auch nichts ergeben.
Hab ein Programm geschrieben das auch variable im EEPROM und konstanten 
im FLASH abspeichert. Das ganze läuft auch so weit. Hab das während der 
Entwicklungsphase zu Debuggen immer per JATAG in einen ATMega32 gespielt 
und da debuggt. Jetzt da alles läuft wollte ich das ganze in einen 
ATMega8 packen da der 32er für das kleine Programm eigentlich viel zu 
groß ist(zugegeben der 8er auch noch). Da der 8er aber keine JTAG 
Schnittstelle hat wollte ich einfach ein hexfile erzeugen und das dann 
mit dem AVR Studio per ISP in den ATMega8 laden.
Nur leider bekomme ich beim kompilieren folgende Fehlermeldung:

Error[e133]: The output format intel-extended cannot handle multiple 
address spaces. Use format variants (-y -O) to specify which address 
space is wanted

Hat jemand eine Ahnung welches Format ich nehmen muss damit es geht? bzw 
welche Einstellungen ich ändern muss? Hab schon versuchsweise ein paar 
andere Formate versucht, natürlich ohne Erfolg.
Oder liegt es an der art und weise wie ich das EEPROM/FLASH anspreche? 
Denke eigentlich nicht, weil auf dem 32er lief das Programm ja auch 
bestens :)
Hänge hier sicherheitshalber noch mal meine Deklaration an.

FLASH:
  static const BYTE __tinyflash arrayflash[][SIZE] =
                                      {{"String1"},
                                       {"String2"},
                                      };

EEPROM:
typedef struct
{
  BYTE device[CMD_NAME_LENGTH];
  BYTE (*realize)(BYTE* parameter);
}__eeprom DATEN;

const DATEN __eeprom cmd[NUMBERCMDS]={{"function1",  func1},
                                      {"Funktion2", func2},
                   };

Wobei der EEPROM Teil global definert ist.

Vielen Dank schon mal
Philipp

Autor: Philipp (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hab jetzt mal die meisten der Ausgabeformate durchprobiert, alle mit der 
gleichen Fehlermeldung :(

Hat jemand eine Idee wo ich was über die Formatvarianten die in der 
Fehlermeldung erwähnt werden finde?
Google war da leider nicht sehr hilfreich :(

Philipp

Autor: Michael Wilhelm (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Probiere mal Intel standard.

Meine EEPROM Deklaration sieht so aus:

__no_init __eeprom struct
{
  unsigned int einschaltzaehler;
  unsigned int betriebsminuten[100];
  unsigned char adresse;
}
eeprom_daten;

MW

Autor: Philipp (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@MW

Hat leider nicht funktioniert :( Wie Deklarierst Du den Variablen im 
FLASH? Zufällig auch schon mal beides in einem Projekt verwendet?

Philipp

Autor: Michael Wilhelm (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
__flash unsigned char dimmer_tab[40] = 
{120,95,90,85,80,75,70,65,60,55,
              50,45,40,38,36,34,32,30,28,25,
              20,19,18,17,16,15,14,13,12,11,
              10,9,8,7,6,5,4,3,3,3};
Das ist eine bei mir übliche Deklaration.
Und ja, ich habe beides des öfteren im gleichen Programm laufen.
Version 2.27B/Win das ist die Workbench-Version.

MW

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.