www.mikrocontroller.net

Forum: Compiler & IDEs MMC CMD0 Response, oder nicht?


Autor: Michael Sonst (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hi,
ich beschäftige mich momentan mit MMC-Karten im SPI Modus, leider haben
sich bei mir schon jetzt einige Fragen aufgeworfen.

Aus der MMC-Systemspezifikation 3.1 entnehme ich, dass auf das Kommando
CMD0 keine Response kommt.

Dennoch habe ich u.A. hier im Forum, von Ulrich Radig, und aus der
ProcyonAvrLib in einigen Codeschnippseln entdeckt, dass nach dem
Kommando CMD0 auf die Antwort '0x01' gewartet wird.
  do
  {
    // send dummy bytes with CS high before accessing
    spiTransferByte(0xFF);
    spiTransferByte(0xFF);
    spiTransferByte(0xFF);
    spiTransferByte(0xFF);
    // resetting card, go to SPI mode
    r1 = mmcSendCommand(MMC_GO_IDLE_STATE, 0);
    #ifdef MMC_DEBUG
    rprintf("MMC_GO_IDLE_STATE: R1=0x%x\r\n", r1);
    #endif
    // do retry counter
    retry++;
    if(retry>10) return -1;
  } while(r1 != 0x01);
(Procyon)
  //Sendet Commando CMD0 an MMC/SD-Karte
  Timeout = 0;
  char CMD[] = {0x40,0x00,0x00,0x00,0x00,0x95};
  while(tmp!=1)
  {
    tmp = Write_Command_MMC (CMD);
    //printf ("Return Code from MMC/SD Init CMD0 %x\n",tmp);
    Timeout++;
    if (Timeout > 20)
      {
      return(1); //Abbruch bei Commando1 (Return Code1)
      }
  }
(Ulrich Radig)

Meine Frage ist nun, habe ich eine veraltete Spezifikation, oder weiss
jemand etwas darüber, warum das so gemacht wird?

Freundlichen Gruss
Michael Sonst

Autor: Sobczak (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
in SPI mode wird jedes kommando bestätig (CMD0 wird mit R1 bestätigt).
besser als mit der MMC-specifikation kommt man mit einem data-sheet
voran (ich habe mit dem datenblatt von infineon SLA F0064 gearbeitet)

Autor: Sobczak (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
hier ein beispielprojekt von glyn.

Autor: Michael Sonst (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hmm auch in der Hitachi beschreibung von der Seite von Ulrich Radir
steht, dass CMD0 kein Response liefert. Kann mir irgendwie nicht
vorstellen, dass die beide mist schreiben. In deinem Beispiel wird es
allerdings auch erwartet so wie's aussieht.
Wäre froh, wenn mir jemand sagt warum es alle anders machen als in der
Spezifikation. Habe gerade in unserer Hardwareabteilung gefraget, die
machen es ohne.

Gruss
Michael

Autor: Sobczak (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
in dem datenblatt von infineon und sandisk (beide sind fast identisch)
steht dass jedes kommando in spi mode bestätigt wird. und es
funktioniert auch so. hol dir von infineon: DS0204-1.00 und schau auf
die seite 73, tabelle 45 (alle spi-commands mit responses).

Autor: Michael Sonst (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,
tut mir leid, kann die Datei nicht downloaden, die unter Google unter
dem Link erscheint. Kannst du mit die Spezifikation evtl. schicken?

Gruss
Michael

Autor: Sobczak (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
kein problem. brauche nur die adresse.

Autor: Michael Sonst (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke dir.

focus01 (at) gmx (.) de

Grüsse
Michael

Autor: Michael Sonst (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Mist!
Ich nehme alles zurück und behaupte das Gegenteil!
Habe die ganze Zeit unter MMC-Mode nachgeschaut.
Die Antwort im SPI-Mode ist auch in meiner Beschreibung
(MMC-Systemspezifikation 3.1) mit Response im R1 beschrieben.

Danke dir für deine Hilfe

Grüsse
Michael

Autor: msr (gast) (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
ich beginne gerade eine MMC Karte in mein Microcontroller System über 
eine SPI Schnittstelle zu integrieren und stelle fest, daß es kaum Daten 
darüber gibt.

Mir fehlt auch die MMC Spezifikation, kann mir jemand sagen, wo ich die 
bekommen kann, oder mir bitte zuschicken? Oder bibt es womöglich für ein 
eZ80/Z80 System schon Treiber?

Grüße
Heiko

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.