AVR32 UC3A MMC Problem

OP #1300844
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
1
Bool sd_mmc_spi_check_presence(void)
2
{
3
  U16 retry;
4

5
  retry = 0;
6
  if (sd_mmc_spi_init_done == FALSE)
7
  {
8
    // If memory is not initialized, try to initialize it (CMD0)
9
    // If no valid response, there is no card
10
    while ((r1 = sd_mmc_spi_send_command(MMC_GO_IDLE_STATE, 0)) != 0x01)
11
    {
12
      spi_write(SD_MMC_SPI,0xFF);            // write dummy byte
13
      retry++;
14
      if (retry > 10)
15
->        return KO; // 
16
    }
17
    return OK;
18
  }
19
  else
20
  {
21
    if ((r1 = sd_mmc_spi_send_command(MMC_CRC_ON_OFF,0)) == 0x00)
22
      return OK;
23
    sd_mmc_spi_init_done = FALSE;
24
    return KO;
25
  }
26
}
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

Eine eigene Frage? Dieser Thread ist über 17 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.