Compiler Error: address $0008 is below iDataStart $0100

  • 1
  • 2
  • Seite 1 von 2
ICEMAN42
 
Avatar
 
Betreff:

Compiler Error: address $0008 is below iDataStart $0100

 · 
Gepostet: 02.07.2012 - 14:26 Uhr  ·  #1
Hallo.
Ich habe seit der Version 5.02.07 folgendes Problem:

In meinem Programm benutze ich einige der Register R0-R15 in meinen Interruptfunktionen in Assembler.

Ausserhalb des Interrupts greife ich mit Pascal darauf zu.

{$DATA}
var Register8[$8]: byte;

Das hat bis Rev. 5.02.06 auch wunderbar funktioniert, jetzt aber nicht mehr.

Jetzt kommt nur noch die Fehlermeldung: Error: address $0008 is below iDataStart $0100

Ist ja prinzipiell auch richtig, nur ist die Deklatation $DATA und nicht $IDATA.

Kleines Testprogramm habe ich angehangen.

Viele Grüsse

Jürgen
Der an diesem Beitrag angefügte Anhang ist entweder nur im eingeloggten Zustand sichtbar oder die Berechtigung Deiner Benutzergruppe ist nicht ausreichend.
bovist
Benutzer
Avatar
Geschlecht:
Alter: 65
Homepage: shop.keyboardpartn…
Beiträge: 34
Dabei seit: 03 / 2006
Betreff:

Re: Compiler Error: address $0008 is below iDataStart $0100

 · 
Gepostet: 02.07.2012 - 15:56 Uhr  ·  #2
Hallo,

habe seit 5.04 ähnliches Problem:

Code

{$TYPEDCONST OFF}

const
  MeinPort = @PortA;

 var
  MeinBit4[MeinPort, 4] : bit;  // FEHLERMELDUNG! 
// ging aber noch mit 5.02.x 
// liefert: "Error: address $0022 is below iDataStart $0100"
// aber:

  MeinBit4[@PortA, 4] : bit;    // GEHT!
rh
Administrator
Avatar
Geschlecht:
Herkunft: Germany
Alter: 25
Homepage: e-lab.de
Beiträge: 5558
Dabei seit: 03 / 2002
Betreff:

Re: Compiler Error: address $0008 is below iDataStart $0100

 · 
Gepostet: 02.07.2012 - 18:00 Uhr  ·  #3
Hallo Carsten

der aktuelle AVRco hat eine erweiterte Adress Prüfung, notwendig geworden wegen der XMegas.
So sollte es tun:
Code
{$PData}
var
  MeinPort[@PortA]  : byte;
  MeinBit4[@MeinPort, 4] : bit;  

{$IData}

rolf
rh
Administrator
Avatar
Geschlecht:
Herkunft: Germany
Alter: 25
Homepage: e-lab.de
Beiträge: 5558
Dabei seit: 03 / 2002
Betreff:

Re: Compiler Error: address $0008 is below iDataStart $0100

 · 
Gepostet: 02.07.2012 - 21:29 Uhr  ·  #4
@Iceman42,

Problem ist im nächsten Update beseitig.

rolf
bovist
Benutzer
Avatar
Geschlecht:
Alter: 65
Homepage: shop.keyboardpartn…
Beiträge: 34
Dabei seit: 03 / 2006
Betreff:

Re: Compiler Error: address $0008 is below iDataStart $0100

 · 
Gepostet: 03.07.2012 - 07:08 Uhr  ·  #5
Zitat geschrieben von rh

Hallo Carsten

der aktuelle AVRco hat eine erweiterte Adress Prüfung, notwendig geworden wegen der XMegas.
So sollte es tun:
Code
{$PData}
var
  MeinPort[@PortA]  : byte;
  MeinBit4[@MeinPort, 4] : bit;  

{$IData}

rolf


Danke Rolf, das funktioniert. Ist eigentlich auch "straighter forward".
ICEMAN42
 
Avatar
 
Betreff:

Re: Compiler Error: address $0008 is below iDataStart $0100

 · 
Gepostet: 03.07.2012 - 16:24 Uhr  ·  #6
Zitat geschrieben von rh

@Iceman42,

Problem ist im nächsten Update beseitig.

rolf


Danke Rolf.
Dann werde ich mal auf das Update warten :D
ICEMAN42
 
Avatar
 
Betreff:

Re: Compiler Error: address $0008 is below iDataStart $0100

 · 
Gepostet: 17.07.2012 - 10:47 Uhr  ·  #7
Danke Rolf.
Danke für die schnelle Bearbeitung.

Grüsse Jürgen
mc-electronic
Benutzer
Avatar
Geschlecht: keine Angabe
Herkunft: Sauerland NRW
Beiträge: 372
Dabei seit: 03 / 2008
Betreff:

Re: Compiler Error: address $0008 is below iDataStart $0100

 · 
Gepostet: 25.07.2012 - 11:07 Uhr  ·  #8
Hallo Rolf,

habe seit dem Update von 5.02.00 aud 5.04.04 das gleiche Problem bei EEPROM - Definitionen:

{$EEPROM}
StructConst
eeVar[$0000] : Byte = 0;

ergibt den Fehler "Error: address $0000 is below iDataStart $0200"

Was tun?

Gruß, Michael
  • 1
  • 2
  • Seite 1 von 2
Gewählte Zitate für Mehrfachzitierung:   0

Registrierte in diesem Topic

Aktuell kein registrierter in diesem Bereich

Die Statistik zeigt, wer in den letzten 5 Minuten online war. Erneuerung alle 90 Sekunden.
MySQL Queries: 15 · Cache Hits: 14   137   151 · Page-Gen-Time: 0.023225s · Speichernutzung: 2 MB · GZIP: ein · Viewport: SMXL-HiDPI