We are running a survey to help us improve the experience for all of our members. If you see the survey appear, please take the time to tell us about your experience if you can.
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
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
If you dont want to help please just ignore the post!
I know this is an very old topic, but I whole-heartedly agree! we need tutorials for SD card access and we need them.
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.
Equivalently, if you don't like the reply - just ignore it!
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!