Forum: Mikrocontroller und Digitale Elektronik Probleme mit MBLAB 6.3 beim linken zweier C-Files


von Rainer S. (oldwabbel)


Lesenswert?

Hallo Leute,

schon beim ersten Versuch die 1K-Grenze des CC5X-Compilers mit MPLAB zu
umgehen, stoße ich (als Hobby-Programmierer) beim PIC 16F872 auf
nachfolgende zahlreiche und gleichartige Fehlermeldungen wie diese:

Message[302] C:\PIC\BEISPIELE\16F872\TEST_V001.ASM 556 : Register
in operand not in bank 0. Ensure that bank bits are correct.
Die Register sind z.B.: ADIE, EEADRH, EEADR, ...u.v.a! Woran mag das
liegen?

Ich habe unter Source Files zwei *.asm Files angelegt, unter Header
Files das P16F872.inc hinzugefügt und bei Linker Scripts den 16f872.lkr
ausgewählt. Doch beim Versuch "Build all" unter Project, erscheinen im
Output´-Fenster zahlreich zuvor beschriebene Fehlermeldungen.

Hat jemand ein Tip für mich?

Ciao
Oldwabbel

von dds5 (Gast)


Lesenswert?

Abgesehen davon, dass MPLAB 6.2 schon relativ alt ist...
Du schreibst
Fehlermeldungen wie diese:

Message[302] C:\PIC\BEISPIELE\16F872\TEST_V001.ASM 556 :

Diese Meldung wird zu Recht als "Message", also Nachricht,
bezeichnet.
Es handelt sich nämlich lediglich um den Hinweis, dass das
angesprochene Register nicht auf Registerbank 0 liegt und deshalb die
Bankbits im Statusregister (könnten RB0 und RB1 heissen) richtig gesetzt
sein müssen.

In "Poject", "Build Options" kann lässt sich für die Assembler
Dateien unter "Categories" = Output der Error and Warning level
einstellen. Die Meldungen lassen sich auf diese Weise ausschalten.

Dieter

von Rainer S. (oldwabbel)


Lesenswert?

Hallo Dieter,

danke für den Hinweis, doch nach der Vielzahl von (Warn-)Meldungen
folgt am Schluß noch die folgende Error-Meldung, die die Erzeugung
eines Hex-Files unterbindet.

Copyright (c) 2003 Microchip Technology Inc.
Error - section 'PROG' can not fit the section. Section 'PROG'
length=0x00000666
Errors    : 1

Habe jedoch keine Ahnung, wo ich hier nach dem "Fehler" suchen
kann!!!

Ciao
Oldwabbel

von dds5 (Gast)


Lesenswert?

Hallo Rainer,

das mit der Linkersteuerung ist nicht ganz trivial. Vielleicht hilft
ein Blick in das manual, ist allerdings ein 2,6MB Download.

http://ww1.microchip.com/downloads/en/DeviceDoc/33014J.pdf

Dieter

von Rainer S. (oldwabbel)


Lesenswert?

Hallo Dieter,

inzwischen bin ich weiter gekommen. Ursache für diese (und andere)
Fehlermeldungen war eine nicht gerade sorgfältig gestaltete
Linker-Datei meines eingesetzten PICs. In dieser 16F872.lkr
überschnitten sich z.T. die Adressbereiche oder waren andererseits viel
zu knapp ausgelegt.

Trotzdem Danke für deine Hilfe

Rainer

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.