Hi all
I'm doing a SD-Card interface for my board. I finally initialized my card! Now Im having a problem with DMA. Im using the NXP driver(mci) and they use the DMA but its not working at all.. Every time occurs timeout in this line: " . . .
/* Start DMA Memory to Peripheral transfer. */ mci_dma_start (DMA_WRITE, buf); MCI_DATA_CTRL = 0x99; for (i = DMA_TOUT; i; i--) { if (GPDMA_RAW_INT_TCSTAT & 0x01) {
/* Data transfer finished. */ break; }
. . . "
Someone can help me here? How works this DMA? Anybody knows what is the writing/reading sequence of SD-Card?
Sorry for my poor english..
Fabio
Thank you Tamir, my mistake, I'm using MCI_LPC23xx.c. I don't know if it is the most recently. Apparently date of june 2010. And DMA its not working..Occurs timeout, does someone have another example?
Thank you!
Equivalently, if you don't like the reply - just ignore it!
Fabio,
NXP SD-card software is horrible. It is even more than that - it is silly and wasteful. Have a look at the Keil implementation (MCI_LPC24xx.c). It uses DMA, and works well.
I know this is an very old topic, but I whole-heartedly agree! we need tutorials for SD card access and we need them.
If you dont want to help please just ignore the post!
So shouldn't you refer your question to NXP, then?!
"Anybody knows what is the writing/reading sequence of SD-Card?"
Of course: http://www.sdcard.org
View all questions in Keil forum