www.mikrocontroller.net

Forum: Mikrocontroller und Elektronik SD Card write Funktion hat ein Bug

Autor: Tobias (Gast)
Datum:
Angehängte Dateien:
  • sdwrite (928 Bytes, 64 Downloads)

Hallo,

ich habe einen großen Bug in meinem Programm, kann ihn aber verflixt
noch mal nicht finden. Könnt ihr mal schauen was ich falsch mache.
Ich möchte mit der Funktion eine SD Card bzw. MMC beschreiben. Nun
kommt das verrückte. Wenn ich diese Funktion einmal aufrufe
funktioniert es, die Daten sind dann auf der Karte. Rufe ich diese
Funktion ein zweites mal auf so kommt als Response 0x03, also illegales
Kommando angeblich. Dann hilft nur Karte von der Versorgungsspannung
trennen, die Karte wieder reseten und initialisieren. Selbst wenn ich
die Karte drin lasse, sie dann Resete und Initialisiere bleibt die
Karte bei der Initialisierung hängen. Ich habe es mit einer Standard
Sandisk SD Card 256MB einer Ultra Sandisk SD Card 1024MB und einer
Noname MMC 32MB versucht. Immer das gleiche. Ich programmiere mit einem
ATmega128l. Die Karte steuere ich mit dem SPI Bus an. Ich verstehe es
einfach nicht. Meine Read Funktion läuft einwandfrei. Bitte helft mir,
ich bin fast am verzweifeln. VIELEN DANK.
Autor: Tobias (Gast)
Datum:

hi Leute,

ich habe weiter an dem Problem gearbeitet. Ich habe irgendwo gelesen
dass man das CMD 13 Kommando schicken soll/muss um zu schauen ob
richtig geschrieben worden ist.  ABER hier kommt wieder ein illegales
Kommando als Response 0x04( R1 Response).
TOTAL KOMISCH, aber jetzt funktioniert es. Ich kann mehrere Block
hintereinander schreiben. Kann mir jemand sagen wieso es jetzt
funktioniert. Weil ich traue der Sache noch nicht. Wenn ich z.B andere
Karten nehme.
Autor: Werner B. (Gast)
Datum:

Beobachte doch einmal die 3,3V an der SD/MMC mit einem Oszi während Du
schreibst?!
Autor: Daniel (Gast)
Datum:

habe das gleiche problem....an was liegt das????!?!?!?
kann mir hier wer helfen bitte

liebe grüße
daniel
Autor: Hannes Ebner (Gast)
Datum:

?? gleiche problem ist hier auch

keiner der ne lösung hat
Autor: Ralf (Gast)
Datum:

Hast du wie oben vorgeschlagen mal mit dem Oszi geguckt, was die
Spannung macht?

Ralf
Autor: Hannes Ebner (Gast)
Datum:

das nicht aber ich glaube auch nicht das es mit der spannung was haben
kann.
denke hier eher das es bei den cmd ´s liegt ... hier wird irgendwo ein
zwischenschritt reingehörn und dann wird das problem warscheinlich
gelöst sein ... nur welcher ?! :-)
Autor: Hannes Ebner (Gast)
Datum:

hab leider kein oszi :-(
Autor: Martin Thomas (mthomas) (Moderator) Benutzerseite
Datum:

Thread ist uralt, dennoch "für die Akten" ein paar Binsenweisheiten:
* wie erwähnt ordentliche Spannungsversorgung, im Zweifel 100nF+10uF an
VCC/GND nahe am Kartensockel
* Pullup an /CS und DO
* zumindest für erste Tests Controller und Karte mit 3,3V betreiben,
schließt Problem durch Pegelwandler erstmal aus
* ChaN's Beispiele herunterladen (
http://elm-chan.org/fsw/ff/ffsample.zip ) und sich vom darin enthaltenen
avr/mmc.c inspirieren lassen hilft oft (zumindest mir immer, wenn es
darum geht, MMC/SD-Card auf einem neuen "Spielzeug" zum Laufen zu
bringen).
Autor: Hannes Ebner (Gast)
Datum:

Herzlichen Dank Thomas hat mir fürn anfang weitergeholfen ... teste mal
durch.... ich denke das ich die karte nicht sauber intitalisiere

Antwort schreiben

Die Angabe einer Email-Adresse ist freiwillig. Wenn Sie automatisch per Email ü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




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 erkennst du die Nutzungsbedingungen an.

webmaster@mikrocontroller.netImpressumNutzungsbedingungenWerbung auf Mikrocontroller.net