Probleme mit Variablenplatz/Arrays

Gast #77486
Lesenswert?

Hallo

Ich habe folgendes Problem (Programm anbei):
Ich habe 18 bytes die ich bitweise an 2 mal je 9 kaskadierte 4094 shift
ic's rausticker, welche dann an LEDs angeschlossen sind (PC5 & PC6).
Das funzt auch wunderbar. Jetzt mein Problem. Ich hab mir ein
Blinkenlight Movie in ein Array kovnertiert.
Zuerst hatte ich eine Variante programmiert die durch ein einzelnes
Array durchloopt (jedes Frame 18 byte, 19 frames insgesamt, ein
eindimensionales array)., von der Logik her war das einwandfrei, doch
ploetzlich hats das ganze verschoben und wieder von vorne angezeigt.
Deshalb hab ich die einzelnen Frames in eigene Variablen gesetzt, und
nochmals getestet. = dasselbe
(Frame 14 ist das erste das falsch angezeigt wird).
Wenn ich jetzt den Code sendScreen(1) ... sendScreen(13)
auskommentiere, tritt der Fehler immer noch auf.
Kommentiere ich dann auch noch die Variablen aus werden die Frames
plötzlich richtig angezeigt. Ich bin ratlos.
Hat einer eine Idee was mein Fehler ist? Ich tippe auf irgend eine
falsche Segmentierung des Speichers oder sowas in der Art... Ich
benutze avr-gcc 3.3 20030512 (prerelease)

Vielen Dank & Gruesse

Flavio
Angehängte Dateien:
Gast #77487
Lesenswert?

Da Du nicht schreibst, welchen Prozessor Du verwendest, kann man da kaum
was zu sagen.
Ich habe die Vermutung, daß Dein RAM vol, bzw "überfüllt" ist. Warum?
Weil Dein Movie im RAM, besser gesagt sogar auf dem Stack angelegt wird
(lokale variablen...). Versuche doch mal, die Sequenzen in den
Statischen Speicher zu legen (siehe compiler-Doku).

Gruß,
Patrick...
Gast #77488
Lesenswert?

Hi Patrick

Ich benutzte den Atmega8515. Ja, da bin ich unterdessen auch angelangt,
gestern waren die GNU-Seiten down, ich nehm an du denkst da an die
Funktionen von pgmspace.h?

Danke & Gruesse

Flavio
Gast #77489
Lesenswert?

Ich verwende AVRs nicht, deswegen hab ich Dir "nur" den Hinweis auf
die Doku gegeben (die aber, wie ich in anderen Posts gelesen habe, auch
lokal auf Deinem Rechner sein sollte). Ich würde Dir gerne mehr dazu
sagen, aber dazu ist mein Wissensstand über AVRGCC zu gering.
Wenn Du absolut nicht weiterkommst, dann kann ich gerne auch noch mal
reingucken...

Gruß,
Patrick...

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren