XMega SPI Verbindung zu SD-Karte

OP #2503506
Lesenswert?

Hallo Leute

Ich versuche nun schon seit längerer Zeit verzweifelt eine SD-Karte mit 
einem ATXMega128A3 anzusteuern. Ich habe sie über den PORTC 
angeschlossen. Leider stockt der Code bei der Initialisierung des SPI's.
1
void spi_init(void)
2
{
3
    //Diese Zeile funktioniert nicht! Code wird nicht weiter ausgeführt!
4
    SPIC.CTRL =  SPI_MODE_0_gc | SPI_PRESCALER_DIV4_gc | (1<< SPI_ENABLE_bp)|(1<< SPI_CLK2X_bp) |(1<< SPI_MASTER_bp);
5
    // Interrupt ausschalten
6
    SPIC.INTCTRL = SPI_INTLVL_OFF_gc;
7
    // SPI Status auf 0 setzen
8
    SPIC.STATUS = 0;
9
}

Hat jemand eine funktionierende FAT16/32 Library in der das Ganze 
funktioniert(dann müsste ich das Rad nicht mehr neu erfinden). Ich würde 
mich über eine schnelle Antwort freuen. =)

MfG

Farin_94
OP #2504253
Lesenswert?

Also xmega.. =/

Leider stockt der Code schon sehr früh.
Bei folgender Zeile kommt er nicht mehr weiter:
1
MMC_Direction_REG &=~(1<<SDCARD_MISO);         // miso auf input
Wobei das MMC_Directioon_REG bei mir PORTC.DIR ist und SDCARD_Miso 6.

Kannst du mir vielleicht nocheinmal helfen?

MfG

Farin_94
Gast #3576524
Lesenswert?

Hallo Gerhard!

Vielen Dank für die Implementierung. Selten, dass bei mir ein Code aus 
dem Forum einfach eingelesen und geflasht werden kann. Kann es sein, 
dass der Code für den CrumbX128A3 vorgesehen ist?

Also, großes Danke nochmal und schöne Grüße aus Österreich,
ALex

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren