mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik ATmega32 + SD-Karte (Klabunde-Lib)


Autor: Philip H. (lephilip)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Liebe Foren-Kollegen,

ich lese schon sehr lange hier mit und bin bisher immer fündig geworden. 
Jetzt habe ich ein Problem, bei dem ich nicht weiter komme und mich 
erstmals selbst zu Wort melde.

Ziel ist es, mit dem ATmega32, 16 MHz, NET-IO-Board von Pollin plus 
ADD-ON-Board mit SD-Steckplatz, eine SD-Karte (SPI-Modus) anzusprechen.

Dazu habe ich die Lib von Herrn Klabunde (danke an dieser Stelle!) 
herunter geladen: http://www.holger-klabunde.de/avr/FATMultiFile34.zip

Ich habe mir alle Konfigurationseinstellungen angesehen und keine 
Abweichungen zu meinem Aufbau (Ports etc.) gefunden. Programm mit AVR 
Studio 4 kompliliert, auf den AVR geladen und gestartet.

Das Klabunde-Test-Programm "DOSFrWrTest3" startet auch. Es erkennt die 
SD-Karte - aber das Schreiben klappt nicht. Es kommen (egal, welches 
Test-Programm ich lade) maximal 0B-Dateien raus. Das Protokoll, das bei 
DOSFrWrTest3 über UART an den PC geschickt wird, zeigt Folgendes:

Holgi's Multi-FAT DOS-Read-Write-Test3
FAT16
bootSecOffset 237  Reserved Sectors 4
FAT Sectors 242    Num. of FAT's 2
secPerCluster  16  BytesPerCluster 8192
FirstFATSector 241  FirstDataSector 757
FirstRootSector 725  RootDirSectors 32
FirstDirCluster 0  maxcluster 61883
maxsect 990976

... und das Ganze in der Endlos-Schleife.

Ich vermute also, dass das Programm an der Stelle (Ende der Funktion 
GetDriveInformation() ) abstürzt und neu startet.

Leider habe ich keinen blassen Schimmer, was der Grund sein könnte. Ich 
würde mich sehr freuen, wenn ihr Tipps, Hinweise oder Vorschläge habt, 
wie ich das Problem in den Griff bekommen kann.

Herzlichen Dank!
Philip

Autor: Sascha Weber (sascha-w)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

benutzt du den FatBuffer? Wie viel RAM wird vom Programm schon 
verwendet?

Sascha

Autor: holger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>benutzt du den FatBuffer? Wie viel RAM wird vom Programm schon
>verwendet?

Das ist mit Sicherheit das Problem. Das MultiFile System
ist viel zu groß für einen ATMega32. Also besser zum SingleFile
System von der Seite greifen. Wenn noch Ethernet dazukommen soll
besser auf ATMega644 umsteigen.

Autor: Philip H. (lephilip)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Sascha und Holger,

vielen Dank für den Hinweis - war genau richtig. FATSingleOPT läuft 
bestens, sogar mit FAT_BUFFER.

Beste Grüße,
Philip

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.