Stackgröße aus bin oder eeprom file lesen

Allgemeine Themen rund um den Propeller Mikrocontroller und Elektronik
Antworten
Benutzeravatar
PIC18F2550
Beiträge: 2832
Registriert: Fr 30. Sep 2011, 13:08

Stackgröße aus bin oder eeprom file lesen

Beitrag von PIC18F2550 »

Hallo,

woran kann ich an einem bin oder eeprom File die größe des Stacks erkennen.

Da der Chip Standardmäßig in spin startet muss die größe des Stackes definiert sein.
Gruß
PIC18F2550

drone265/278
Barbarus hic ergo sum, quia non intellegor ulli.
Ein Barbar bin ich hier, da ich von keinem verstanden werde.
ʎɐqǝ ıǝq ɹnʇɐʇsɐʇ ǝuıǝ ɹǝpǝıʍ ǝıu ǝɟnɐʞ ɥɔı ´uuɐɯ ɥo
Benutzeravatar
drohne235
Administrator
Beiträge: 2284
Registriert: So 24. Mai 2009, 10:35
Wohnort: Lutherstadt Wittenberg
Kontaktdaten:

Re: Stackgröße aus bin oder eeprom file lesen

Beitrag von drohne235 »

Schau mal im Handbuch unter _stack. Beantwortet nicht direkt deine Frage, aber vielleicht hilft es dennoch. Anwendung von _stack findet man im graphics-demo.
"Ob Sie denken, dass Sie es können, oder ob Sie denken, dass Sie es nicht können - in beiden Fällen haben Sie recht." Henry Ford
Benutzeravatar
PIC18F2550
Beiträge: 2832
Registriert: Fr 30. Sep 2011, 13:08

Re: Stackgröße aus bin oder eeprom file lesen

Beitrag von PIC18F2550 »

Da hab ich schon nach geschaut.
Mit STACK_ wird nur ein Speicher Bereich mit Schreibschutz reserviert dessen größe ich festlegen muss.

Ich suche aber den von BST ermittelte große.
Die sollte im file enthalten sein.
Gruß
PIC18F2550

drone265/278
Barbarus hic ergo sum, quia non intellegor ulli.
Ein Barbar bin ich hier, da ich von keinem verstanden werde.
ʎɐqǝ ıǝq ɹnʇɐʇsɐʇ ǝuıǝ ɹǝpǝıʍ ǝıu ǝɟnɐʞ ɥɔı ´uuɐɯ ɥo
Benutzeravatar
drohne235
Administrator
Beiträge: 2284
Registriert: So 24. Mai 2009, 10:35
Wohnort: Lutherstadt Wittenberg
Kontaktdaten:

Re: Stackgröße aus bin oder eeprom file lesen

Beitrag von drohne235 »

Jo, die ist in den ersten Bytes in der BIN-Datei versteckt. Schau dir mal den Loader in Regnatix oder Bellatrix an, dort werden diese Werte verarbeitet und gesetzt bevor der entsprechenden Code in der Cog gestartet wird. In Regnatix ist der Loader in Spin geschrieben, in Bella ist die Kernroutine ein PASM-Code um wirklich den gesamten hRAM nutzen zu können.
"Ob Sie denken, dass Sie es können, oder ob Sie denken, dass Sie es nicht können - in beiden Fällen haben Sie recht." Henry Ford
Benutzeravatar
kuroneko
Beiträge: 202
Registriert: Sa 22. Okt 2011, 13:05
Wohnort: FN, Germany

Re: Stackgröße aus bin oder eeprom file lesen

Beitrag von kuroneko »

PIC18F2550 hat geschrieben:Ich suche aber den von BST ermittelte große.
Die sollte im file enthalten sein.
im File steht wirklich nur der Anfang vom Stack. Den Rest muss man selber machen. Mit anderen Worten, falls der Anwender _STACK und _FREE abweichend von ihren defaults belegt, hast Du ein (kleines) Problem.
Benutzeravatar
PIC18F2550
Beiträge: 2832
Registriert: Fr 30. Sep 2011, 13:08

Re: Stackgröße aus bin oder eeprom file lesen

Beitrag von PIC18F2550 »

Zur Verdeutlichung meines Anliegens.

Code: Alles auswählen

   VAR
     long TestStack[32]                    'a stack of longs used by delay routine    
   
   PUB public_method_name

     cognew(Toggle(16, 3_000_000, 10), @TestStack)
     ...     

   PRI Toggle(x, y, z)
     ...     
Der @TestStack muss genauso groß sein wie der Stack von dem 1. GOG wenn der Spinninterpreter gestartet wird.
Hintergrund ist das die von BST ermittelte Größe immer richtig ist da ich mehrere COGs mit dem gleichen CODE ab 0 starten will.
Gruß
PIC18F2550

drone265/278
Barbarus hic ergo sum, quia non intellegor ulli.
Ein Barbar bin ich hier, da ich von keinem verstanden werde.
ʎɐqǝ ıǝq ɹnʇɐʇsɐʇ ǝuıǝ ɹǝpǝıʍ ǝıu ǝɟnɐʞ ɥɔı ´uuɐɯ ɥo
Antworten