Forum: Mikrocontroller und Digitale Elektronik µC stürzt ab trotz freiem SRAM


von Andi S. (laserandi)


Angehängte Dateien:

Lesenswert?

Hallo,
auf meinem mega644 soll ein Programm  laufen, welches 2 Hauptfunktionen 
hat:
1. Kamera auslesen
2. Bild auf SD-Karte speichern
Der verbleibenden SRAM wird mit der Routine von:
http://www.rn-wissen.de/index.php/Speicherverbrauch_bestimmen_mit_avr-gcc
berechnet (mem-check).
Debuggen  kann ich über ein LCD.

Was funktioniert:
-Kamera auslesen ohne das Bild zu speichern oder
-Daten auf die SD-Karte schreiben ohne die Kamerafunktionen

Problem:
Sobald beides zusammen laufen soll, bleibt der µC beim öffnen der Datei 
stehen, obwohl laut mem-check noch über 1600 Byte RAM frei sind.

Wie würdet Ihr hier vorgehen, um den Fehler zu finden?

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Im Debugger nachsehen, was geschieht.

von hubert (Gast)


Lesenswert?

Hast Du denn schon mal geschaut, wie groß die Bilddatei denn ist? 1.6 MB 
bringen heutige Digitalkameras leicht zusammen.

Vielleicht geht es ja, die Datei Stückchenweise auszulesen und dann 
Stückchenweise auf der SD-Card wieder zusammenzuschreiben.

von Andi S. (laserandi)


Lesenswert?

@Rufus
Leider kennt simulavr als backend für avr-gdb keinen atmega644.
Außerdem müsste ich dann die ganze Kommunikation der Kamera über UART 
per Hand simulieren. Das ist unmöglich.
Also kann ich nur über JTAG debuggen. Ist das so korrekt?

@hubert
Es handelt sich um eine alte Handycam MCA25. Das Problem ist, dass das 
Programm schon beim öffnen der Datei auf der sd-Karte hängen bleibt und 
gar nicht bis zum auslesen der Kamera kommt.

von Andi S. (laserandi)


Lesenswert?

Rufus Τ. Firefly schrieb:
> Im Debugger nachsehen, was geschieht.

Ich habe mir jetzt einen AVR-Dragon zum debuggen gekauft. Leider bleibt 
das Programm aber immer bei der Kommunikation mit der sd-Karte über spi 
stehen. Es werden keine Daten empfangen trotz richtiger 
Frequenzeinstellungen im AVR-Studio:-(

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.