MMC CMD0 Response, oder nicht?

Gast #285183
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.
1
  do
2
  {
3
    // send dummy bytes with CS high before accessing
4
    spiTransferByte(0xFF);
5
    spiTransferByte(0xFF);
6
    spiTransferByte(0xFF);
7
    spiTransferByte(0xFF);
8
    // resetting card, go to SPI mode
9
    r1 = mmcSendCommand(MMC_GO_IDLE_STATE, 0);
10
    #ifdef MMC_DEBUG
11
    rprintf("MMC_GO_IDLE_STATE: R1=0x%x\r\n", r1);
12
    #endif
13
    // do retry counter
14
    retry++;
15
    if(retry>10) return -1;
16
  } while(r1 != 0x01);
(Procyon)
1
  //Sendet Commando CMD0 an MMC/SD-Karte
2
  Timeout = 0;
3
  char CMD[] = {0x40,0x00,0x00,0x00,0x00,0x95};
4
  while(tmp!=1)
5
  {
6
    tmp = Write_Command_MMC (CMD);
7
    //printf ("Return Code from MMC/SD Init CMD0 %x\n",tmp);
8
    Timeout++;
9
    if (Timeout > 20)
10
      {
11
      return(1); //Abbruch bei Commando1 (Return Code1)
12
      }
13
  }
(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
Angehängte Dateien:
Gast
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)
Gast
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
Gast
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).
Gast
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
Gast
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
Gast
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

Eine eigene Frage? Dieser Thread ist über 20 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.