mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik AVR32 UC3A MMC Problem


Autor: Billy __ (slowflyer)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich hab eine Applikation mit MMC (angelehnt an das Beispiel im Framework 
des Studios ohne RTOS) geschrieben. Die MMC Karte wird nach Start 
erkannt und gelesen, entferne ich jedoch diese aus dem Slot und schiebe 
sie wieder herein, so wird diese nicht mehr gelesen. Am folgenden Punkt 
wird unterbrochen (siehe Pfeil):

original code aus framework sd_mmc_spi.c
Bool sd_mmc_spi_check_presence(void)
{
  U16 retry;

  retry = 0;
  if (sd_mmc_spi_init_done == FALSE)
  {
    // If memory is not initialized, try to initialize it (CMD0)
    // If no valid response, there is no card
    while ((r1 = sd_mmc_spi_send_command(MMC_GO_IDLE_STATE, 0)) != 0x01)
    {
      spi_write(SD_MMC_SPI,0xFF);            // write dummy byte
      retry++;
      if (retry > 10)
->        return KO; // 
    }
    return OK;
  }
  else
  {
    if ((r1 = sd_mmc_spi_send_command(MMC_CRC_ON_OFF,0)) == 0x00)
      return OK;
    sd_mmc_spi_init_done = FALSE;
    return KO;
  }
}
r1 ist hier dann immer 0xe0, müsste aber 0x01 sein. Ein Blick in das 
Header-File sagt mir, dass die Flags MMC_R1_BUSY,MMC_R1_PARAMETER und 
MMC_R1_ADDRESS gesetzt sind.

Das beschriebene Problem habe ich mit einer SanDisk 128MB Karte, jetzt 
hab ich einfach mal zum Ausprobieren eine Fujifilm 256MB genommen und 
siehe da, es geht!

Hat jemand eine Idee warum?

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.