Kurze Frage zu Keil µVision2 und AT89C2051

Gast #206200
Lesenswert?
• ▲
▼
Hallo Zusammen!

Vorweg: nein, ich möchte mich nicht wirklich in die 8051er einarbeiten,
ich habe lediglich einem Bekannten versprochen, ihm ein kleines Programm
zu kompilieren ;)

Ich vermute, daß ich irgend einen Parameter in den Optionen nicht
richtig eingestellt habe. Kompilieren lässt sich sowohl der standard
Startup-Code sowohl das C-Programm ohne Fehler. Aber dann beim Linken
krachts!

*** ERROR L107: ADDRESS SPACE OVERFLOW
    SPACE:   CODE
    SEGMENT: ?PR?EXT_INT0?KOMFORT
    LENGTH:  0072H

Und das bei etlichen "SEGMENT"s.

Ich bin völlig ahnungslos, woran das liegen könnte.
Zu groß kann der Code jedenfalls nicht sein:

************************************************************************ 
******
* RESTRICTED VERSION WITH 0800H BYTE CODE SIZE LIMIT; USED: 010DH BYTE
(13%) *
************************************************************************ 
******

Program Size: data=20.0 xdata=0 code=269
LINK/LOCATE RUN COMPLETE.  0 WARNING(S),  22 ERROR(S)

Danke schonmal...
Gast #206207
Lesenswert?
• ▲
▼
@Oldbug: Hast Du eine vollständige Version von Keil? Die Demoversion des
c-compilers hat eine Einschränkung, daß sie nicht unter 2k
Programmspeichergröße läuft. Also nicht Dein Programm muß größer als 2k
sein, sondern der µC muß mehr als 2k Speicher haben. (Der Resetvektor
verzweigt nach 0x0800). Also nimm einen 89C4051, dann klappt es, oder
kauf dir den Keil :-)

Gruß,
Markus_8051
Gast #206208
Lesenswert?
• ▲
▼
Ahaaaa... Das könnte tatsächlich das Problem sein.
Ich hätte das jetzt genau andersrum erwartet: max. 2k Programmgröße.
Aber die Adresse 0x800 hab ich schon mal entdeckt! Tja, schade
eigentlich...
Gast #206209
Lesenswert?
• ▲
▼
Es ist definitiv zu groß für das angegebene Code-Segment.


*** ERROR L107: ADDRESS SPACE OVERFLOW
-->>>>    SPACE:   CODE


Der Keil-Compiler liefert auch keine Mathe-Libs in der aktuellen
2K-Linit Demo (V7.50A) mit. Also nicht nur eine 2K-Grenze sonder auch
nix mit Floating Point und co.

Gerd

Antwort schreiben

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.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.