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.
Stackgröße aus bin oder eeprom file lesen
- PIC18F2550
- Beiträge: 2851
- Registriert: Fr 30. Sep 2011, 13:08
Stackgröße aus bin oder eeprom file lesen
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
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
- 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
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
- PIC18F2550
- Beiträge: 2851
- Registriert: Fr 30. Sep 2011, 13:08
Re: Stackgröße aus bin oder eeprom file lesen
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.
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
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
- 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
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
Re: Stackgröße aus bin oder eeprom file lesen
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.PIC18F2550 hat geschrieben:Ich suche aber den von BST ermittelte große.
Die sollte im file enthalten sein.
- PIC18F2550
- Beiträge: 2851
- Registriert: Fr 30. Sep 2011, 13:08
Re: Stackgröße aus bin oder eeprom file lesen
Zur Verdeutlichung meines Anliegens.
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.
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)
...
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
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