Der tiny13 hat keinen RAM, daher kannst du auch keine Variablen darin ablegen. Schau mal hier: https://www.roboternetz.de/phpBB2/vi...2ffcde1d373e06
Ich programmiere mienen attiny13 zZ. mit Bascom und da klappt auch ganz gut. Nur wenn ich versuche eine Variable vom Typ Byte zu deklarieren
bekomme ich sofort den Fehler: "Out of SRAM Space", obwohl doch selbst ein attiny 13 Problemlos einen einziges Byte Speicher aufbringen können sollte. Im Beispielprogramm vom Lernpaket funktioniert das auch. Nur wenn ich den Code von da 1:1 kopiere klappts trotzdem nicht. Muss man da noch irgendwelche konfigurationen treffen, die nicht im Code selbst liegen?Code:dim n as byte
Der tiny13 hat keinen RAM, daher kannst du auch keine Variablen darin ablegen. Schau mal hier: https://www.roboternetz.de/phpBB2/vi...2ffcde1d373e06
aber das Beispielprogramm aus dem Lernpaket Mikrocontroller funktioniert doch auch Irgendwie muss es dann doch gehen. Wenn ich nicht nur die .bas Datei des Beispielordners kopiere kann ich es auch kompilieren
=> Irgendwo in den anderen Projektdateien muss besagtes Problem geregelt werden - es gibt:
.bas
.bin
.bm
.cfg
.dbg
.obj
.hex
.rpt
Dateien - Weis jmd welche es ist, die mein Problem behebt?
Im Gegensatz zu dem von Dir erwähnten Fred (mit dem Tiny12) verfügt der Tiny13 über 64 Byte Ram in dem man sehr wohl Variablen ablegen kann.Zitat von stefan_Z
Vielleicht ist Dein Hardwarestack so hoch eingestellt dass kein Platz mehr für Variablen übrig ist.
Füg mal folgende Zeile oben in Deinem Programm ein:
$hwstack = 22
Ok, jetzt klapts - kannst du mir villeicht noch erklären, was der Hardwarestack ist?
Der Hardwarestack ist ein reservierter Speicherbereich.Zitat von Barthimaeus
Dort werden z.B. die Rücksprungadressen für Gosub-Befehle zwischengespeichert. Je mehr verschaltelte Gosub-Sprünge man im Programm hat umso mehr Stack muss man hierfür reservieren.
Dieser Speicher steht dann für Variablen nicht mehr zur Verfügung.
Standardmäßig ist dieser bereits voreingestellt. Je nachdem wieviel Variablen man im Programm hat kann es dann (wie in deinem Fall) nicht mehr reichen und man muss ihn händisch anpassen.
Lesezeichen