Forum: Mikrocontroller und Digitale Elektronik C51 - invalid storage class (error C127)


von Michael Jungnickl (Gast)


Lesenswert?

Hallo!

Momentan stelle ich mein mit dem "Evaluation Kit" -
"uVision1" der Firma Keil erstelltes C51-Projekt
auf die Vollversion (C51, V7.x, uVision2) um.

Soll aus dem Projekt mit "rebuilt target" eine Hex-
Datei erzeugt werden, dann gibt der C51-Kompiler fuer
jede eingebundene Funktion (einschliesslich der Biblio-
theksfunktionen) die folgende Fehlermeldung aus:

       "error C127: invalid storage class"

Auf den gaengigen Homepages habe ich dazu folgende
Erklaerung gefunden:

     "An object was declared with an invalid memory space
      specification. This occurs if an object is declared
      with storage-class of auto or register outside of a
      function."

Bisher weiss ich nicht, weshalb in meinem Projet dieser
Fehler erzeugt wird.

Sowohl in "Options for target" wie auch im Programm mit dem
Steuerparameter "#pragma LARGE" weisse ich fuer alle Objekte
den externe Datenspeicher zu. Auch ist im Feld "Off Chip Xdata
memory" der externe RAM mit 64k eingestellt.


Mein Programm ist wie folgt gegliedert:


Header-Datei: test.h (Auszug)


    // Testroutine fuer die gesamte Peripherie
    extern  void  test( void );


Hauptprogramm: main.c (Auszug)


    #pragma  LARGE

    // Testprogramm-Header
    #include "test.h"

    void main( void )
    {
         // Testprogramm aufrufen
         test();
    }


Quelldatei: test.c (Auszug)


    #pragma LARGE

    void test( void )
    {
         // Testroutine
    }


Ich habe bisher alles probeweise variiert. Am weitesten
komme ich, wenn ich beim Aufrufparameter eine Speicher-
klasse (z.B. xdata) angebe. Der Kompiler meldet dann zwar
den obigen Fehler nicht mehr, wohl aber, dass er den
Parameter ignoriert - das kann es ja auch nicht sein.

Schon im vorraus vielen Dank fuer Eure Antwort!

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.