[Esto es en respuesta a los comentarios que siguen a la respuesta de Ian].
Una tarjeta SD es solo un dispositivo SPI, por lo que no es necesario ningún chip / interfaz. Otros protocolos incluyen una interfaz de 2 cables (como I2C) y una interfaz de 4 cables (con un CRC complejo), pero SPI es el más utilizado.
Hay una nota de solicitud de tarjeta SD disponible para el MSP430 en TI aquí .
Es breve, pero incluye código de ejemplo. Maneja la lectura y escritura en varios sectores de la tarjeta SD, que puede ser todo lo que deseas si no vas a conectarlo a una PC. También vea estas implementaciones en Foust (recomendado) o Evans de MSU.
Una vez que tenga las funciones básicas para leer y escribir un sector, puede abstraer un sistema de archivos personalizado y simple a través de USB o usar una biblioteca de sistemas de archivos existente. FatFS , EFSL , o DOSFs son todas las opciones para este último. Si la implementación de todas las funciones requeridas parece demasiado difícil, recuerde que todas menos unas pocas pueden ser talones.
Sin embargo, el sistema de archivos se extraerá a través de su interfaz USB hasta cierto punto. Esto será más fácil si tiene una biblioteca de sistema de archivos real y su tarjeta está en un sistema de archivos legible, pero eso requiere trabajo. Si desea escribir su propio "Sistema de archivos" y guardar trabajo / tiempo / memoria para la implementación de USB, puede hacer que su definición sea tan simple e inflexible como el registro 1 comienza en 0x0, el registro 2 comienza en 0x10 0000, el registro 3 en 0x20 0000 y registre 4 en 0x30 0000. Luego, puede enviar estos datos a través de USB.
La interfaz USB puede ser tan compleja como desee, desde la interfaz en serie hasta el dispositivo de almacenamiento masivo.