AnsweredAssumed Answered

FRDM-K64F SDHC Driver

Question asked by joe hinkle on Jul 2, 2016
Latest reply on Aug 11, 2016 by joe hinkle

I've got a FatFS SDHC driver implemented that works well for single sector reads/writes.

 

I'm attempting to do multi-sector reads and am experiencing strange SDHC behavior.

 

As a test, I want to read 1024 bytes from a file -- so FatFS (after all its FAT and Directory reads) -  issues a read for two (2) sectors from the wanted file.

 

My "Read Block" interface issues a CMD18 with a block count of 2 and AutoCMD12 enabled.

After I read 1024 bytes (256 dwords) the SDHC does NOT show TC (Transfer Complete) active.  I have to perform another 128 dummy reads of the 512 buffer in order to get TC active. 

 

I can't believe this is correct so I must be doing something wrong.

 

I need to understand this issue before I try to implement DMA .. since I can't do 128 dummy DMA reads.

 

I would appreciate any insight you might have on why the SDHC is requiring an additional read of the complete 512 buffer before it issues a TC.

 

Thanks.

Outcomes