Que tal, acabo de terminar unas pruebas referentes a las SD voy a escribir algunas de mis conclusiones tal vez te ayuden
A nivel software
Utilize Microchip MDD File System
MDD linkLos pines para el manejo de la SD los configure en el archivo HardwareProfile.h
Con la libreria me fue posible leer datos en FAT16 y en FAT32 aún no he probado la escritura
Para que funcionara bien con FAT16 tuve que formatear la tarjeta con la librería MDD
FSformat(0,0,"PIC");
leer bien la sintaxis antes de formatear
A nivel Hardware
Utilice el modulo SD de las famosas pantallas de ITead studio
El pic para la prueba fue el PIC24FJ256DA210 el cual utiliza PPS (Pin Re-Mapping peripheral) por lo cual tuve que especificar que pines eran los que utilizaría para el manejo de la SD dentro de un void
//SPI
RPINR20bits.SDI1R=42; // SDI1
RPOR12bits.RP24R=7; //SDO1
RPOR5bits.RP11R=8; //SCLK
En total fueron 4 Lineas para el manejo de la SD
Y aquí esta un pequeño video sobre el funcionamiento, la velocidad de lectura no varia cuando hago la lectura con FAT16 a FAT32
Espero que te sirva la info cualquier cosa pregunta, hace algunos días me pidieron un proyecto que tenia que grabar audio asi que los voy a seguir de cerca