Forum: Mikrocontroller und Digitale Elektronik address space overflow


von sash (Gast)


Lesenswert?

hi
ich hab ein problem mit meinem c compiler (ride), bringt die meldung
"ERROR 107: ADDRESS SPACE OVERFLOW -SEGMENT:
?DT?programmname(programmname)"
ich denke, dass dies heissen soll, dass der compiler denk, dass der ram
vom µc(89c51ed2) voll ist. dieser hat aber 2k ram. nachdem ich eine
variable geloescht habe compiliert er wieder.
in den optionen hab ich zwar was von ramsize gefunden, dieser steht auf
128 kann ihn aber nur auf 256 aendern, was aber auch nix bringt. im
compiler selber hab ich den 8xc51rx2 ausgewaehlt. ich wuerd auch auf
einen anderen compiler umsteigen. hab schon versucht reads51 zum laufen
zu bringen, mir fehlen aber die librarys, und einfach die von ride
reinkopiern funkt auch net.
ich hoff, dass ihr mir irgendwie weiterhelfen koennt.
thx sash

von Jim (Gast)


Lesenswert?

Richtiges Speichermodell gewählt?
Die 2K sind externer Speicher, beim 8051 ist das LARGE oder so ähnlich.

von sash (Gast)


Lesenswert?

vielen dank,
habs unter memory model gefunden. stand auf small, habs jetzt auf large
gestellt und er compiliert wieder.

von sash (Gast)


Lesenswert?

es is doch noch ein problem aufgetreten.
ich erklaer erstmal kurz was zu meinem prog, damit ihr mir auch folgen
koennt:
ich bin dabei eine kleine funkuhrgesteuerte schaltanlage, mit timern,
countdown aufzubauen. bin jetzt dabei dass menue zu schreiben um die
einzelnen timerzeiten, countdownzeiten einzustellen (ausgabe auf ein
16x2 lcd). hardwaremaessig is auch alles soweit fertig und
funktioniert.
jetzt zum problem:
nach der umstellung von small auf large konnte ich das programm
compilieren und auf den µc ueberspielen. auf den ersten blick hat sah
es so aus, als ob es "einwandfrei" laeuft. nur wenn ich ein menue
reingehe um die zeit fuer den countdown einzustellen, werden
irgendwelche zahlen dargestell, welche sich auch nicht korrekt
veraendern lassen. ich habe dann auch versucht eine fruehere
version(mit weniger variablen) ruebergespielt, und es tretten die
selben fehler auf. komischerweisse wird die uhr korekt empfangen und
angezeigt, auch das datum, und die angabe ueber die impuls und
pausenlaenge der einzelnen dcfbits wird korrekt am display ausgegeben.
wenn ich wieder von large auf small stelle funktioniert es aber wieder.
bis jetzt bin ich erst soweit, dass man eine countdownzeit fuer ein
realais einstellen koennen sollte.
ich hatte mich dann noch ein durch die ride hilfe gelesen und noch ein
paar verschiedenen einstellungen ausprobiert, ohne erfolg.
fuer mich ergiebt es aber auch keinen sinn, dass nur die countdownzeit
falsch angezeigt wird und der rest richtig.
ich hoff dass ihr mir nochmal weiterhelfen koennt.
thx sash

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.