Es kommt folgende Fehlermeldung: Debug build of project `C:\Dokumente und Einstellungen\Studium\Desktop\Source Code\Wasserwaage_reloaded.mcp' started. Language tool versions: mpasmwin.exe v5.31, mplink.exe v4.31, mcc18.exe v3.31 Preprocessor symbol `__DEBUG' is defined. Target debug platform is `__MPLAB_DEBUGGER_ICD2=1'. Debug platform options are: `__ICD2RAM=1'. Wed Jun 17 12:24:25 2009 ---------------------------------------------------------------------- Make: The target "C:\Dokumente und Einstellungen\Studium\Desktop\Source Code\Schaufeln.o" is up to date. Make: The target "C:\Dokumente und Einstellungen\Studium\Desktop\Source Code\KSWW_MAIN_C.o" is up to date. Make: The target "C:\Dokumente und Einstellungen\Studium\Desktop\Source Code\LCD12864.o" is up to date. Make: The target "C:\Dokumente und Einstellungen\Studium\Desktop\Source Code\developers.o" is up to date. Make: The target "C:\Dokumente und Einstellungen\Studium\Desktop\Source Code\Wasserwaage_reloaded.cof" is out of date. Executing: "C:\MCC18\bin\mplink.exe" /l"C:\Programme\Microchip\MCC18\lib" "18f26j11_g.lkr" "Schaufeln.o" "KSWW_MAIN_C.o" "LCD12864.o" "developers.o" "C:\Dokumente und Einstellungen\Studium\Desktop\Source Code\p18F26J11.lib" /u_CRUNTIME /u_DEBUG /z__MPLAB_BUILD=1 /z__MPLAB_DEBUG=1 /z__MPLAB_DEBUGGER_ICD2=1 /z__ICD2RAM=1 /o"Wasserwaage_reloaded.cof" /M"Wasserwaage_reloaded.map" /W MPLINK 4.31, Linker Copyright (c) 2009 Microchip Technology Inc. Error - section '.udata_developers.o' can not fit the section. Section '.udata_developers.o' length=0x00000400 Errors : 1 Link step failed. ---------------------------------------------------------------------- Debug build of project `C:\Dokumente und Einstellungen\Studium\Desktop\Source Code\Wasserwaage_reloaded.mcp' failed. Language tool versions: mpasmwin.exe v5.31, mplink.exe v4.31, mcc18.exe v3.31 Preprocessor symbol `__DEBUG' is defined. Target debug platform is `__MPLAB_DEBUGGER_ICD2=1'. Debug platform options are: `__ICD2RAM=1'. Wed Jun 17 12:24:25 2009 ---------------------------------------------------------------------- BUILD FAILED Irgendwie gibts Probleme mit der Datei Delopers. Benötigt die Datei zuviel Speicher für den PIC18F26j11? Ich komm leider nicht weiter. Vielleicht kann mir ja jemand erklären, was der Error bedeutet? Vielen Dank im Voraus Gruß Matthias
Wir haben das ganze Programm schon lauffähig auf nem PIC18F2620 gehabt. Der hat aber die gleichen Speicher wie der PIC18F26j11, den wir jetzt benutzen.
Linker script überprüfen, evt. muss händisch ein größerer speicher bereich angelegt und belegt werden werden. dennis
Wo genau muss ich da was ändern? Sorry, hab das noch nie angepasst. Hier der Quellcode des Linker-Files: // File: 18f26j11_g.lkr // Generic linker script for the PIC18F26J11 processor #DEFINE _CODEEND _DEBUGCODESTART - 1 #DEFINE _CEND _CODEEND + _DEBUGCODELEN #DEFINE _DATAEND _DEBUGDATASTART - 1 #DEFINE _DEND _DATAEND + _DEBUGDATALEN LIBPATH . #IFDEF _CRUNTIME #IFDEF _EXTENDEDMODE FILES c018i_e.o FILES clib_e.lib FILES p18f26j11_e.lib #ELSE FILES c018i.o FILES clib.lib FILES p18f26j11.lib #FI #FI #IFDEF _DEBUGCODESTART CODEPAGE NAME=page START=0x0 END=_CODEEND CODEPAGE NAME=debug START=_DEBUGCODESTART END=_CEND PROTECTED #ELSE CODEPAGE NAME=page START=0x0 END=0xFFF7 #FI CODEPAGE NAME=config START=0xFFF8 END=0xFFFF PROTECTED CODEPAGE NAME=devid START=0x3FFFFE END=0x3FFFFF PROTECTED #IFDEF _EXTENDEDMODE DATABANK NAME=gpre START=0x0 END=0x5F #ELSE ACCESSBANK NAME=accessram START=0x0 END=0x5F #FI DATABANK NAME=gpr0 START=0x60 END=0xFF DATABANK NAME=gpr1 START=0x100 END=0x1FF DATABANK NAME=gpr2 START=0x200 END=0x2FF DATABANK NAME=gpr3 START=0x300 END=0x3FF DATABANK NAME=gpr4 START=0x400 END=0x4FF DATABANK NAME=gpr5 START=0x500 END=0x5FF DATABANK NAME=gpr6 START=0x600 END=0x6FF DATABANK NAME=gpr7 START=0x700 END=0x7FF DATABANK NAME=gpr8 START=0x800 END=0x8FF DATABANK NAME=gpr9 START=0x900 END=0x9FF DATABANK NAME=gpr10 START=0xA00 END=0xAFF DATABANK NAME=gpr11 START=0xB00 END=0xBFF DATABANK NAME=gpr12 START=0xC00 END=0xCFF #IFDEF _DEBUGDATASTART DATABANK NAME=gpr13 START=0xD00 END=_DATAEND DATABANK NAME=dbgspr START=_DEBUGDATASTART END=_DEND PROTECTED #ELSE //no debug DATABANK NAME=gpr13 START=0xD00 END=0xDFF #FI DATABANK NAME=gpr14 START=0xE00 END=0xEBF DATABANK NAME=sfr14 START=0xEC0 END=0xEFF PROTECTED DATABANK NAME=sfr15 START=0xF00 END=0xF5F PROTECTED ACCESSBANK NAME=accesssfr START=0xF60 END=0xFFF PROTECTED #IFDEF _CRUNTIME SECTION NAME=CONFIG ROM=config #IFDEF _DEBUGDATASTART STACK SIZE=0x100 RAM=gpr12 #ELSE STACK SIZE=0x100 RAM=gpr13 #FI #FI
ich hatte das problem auch schon mal, kann mich im Moment (bin grade auf Arbeit) leider nicht genau dran erinnern. Jedenfalls lag es irgendwie daran, das ein Modul im Codebereich eine Überschneidung mit ORG 0x00 oder ORG 0x04 (Reset / Interrupt) hatte. Geholfen hat - wenn ich mich richtig erinnere - im Quelltext (ASM) explizit jedem Code-Segment eine Adresse zu geben. Ausserdem noch mal bei den Projekteinstellungen vergleichen, ob "Absolute" oder "Relocatable" Code eingestellt ist.
Noch was: Bei "Debug" Konfiguration kann es zu einer Überschneidung mit dem Debug Code kommen (der hat irgeneine feste Adresse). Probier mal "Release". Und natuerlich nochmal gucken, das in allen ASM Sourcecodes das richtige #include File für das geänderte Device eingestellt ist.
Hallo, ich stehe gerade vor dem gleichen Problem. >> Error - section '.udata_user.o' can not fit the section. Section '.udata_user.o' length=0x00000193 << Das Problem kam mit dem Anwachsen des Codes für neue Features. Offensichtlich bekommt der Linker die Daten nicht unter, aber warum?? GPR sind noch genügend da. PIC ist ein 18F4455 mit CDC-Framework für USB Vielen Dank für jegliche Tipps. Gruß, CHris.
Achso: Debug oder Release macht keinen Unterschied. Egal ob 18f4455i.lkr oder 18f4455.lkr verwendet wird. Ich steh ehrlich gesagt auf dem Schlauch...
Um Daten grösser als 256 Bytes verarbeiten zu können musst du im Linkerfile arbeiten. Wie es genau funktioniert kannst du z.B. hier nachlesen http://www.kevin.org/frc/C18_2.4_getting_started.pdf 3.7 Example 6
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.