¿ Sabeis si es posible leer al mismo tiempo dos ficheros de una tarjeta SD desde un microcontrolador ?.
Una parte varios de mis nuevos proyectos necesitan un reproductor de sonidos (WAV o RAW), para eso voy a usar un Kinetis MK20, MK64 o MK66, con las librerías Teensy de Audio (aún tengo que probar si usar el DAC del micro o un codec por I2S con el chip SGTL5000).
El problema que me ha surgido es que mi sistema de sonido, necesita poder reproducir al menos dos sonidos al mismo tiempo en algunas ocasiones. La idea es que los sonidos están almacenados en tarjeta SD, y aquí viene el problema, parece que no es posible abrir y leer dos ficheros al mismo tiempo (con librerías SD/SdFat).
En principio solo se me ocurre añadir una Eprom o una Flash por SPI y que los archivos se carguen solo una vez desde la tarjeta SD a la Eprom y desde allí los lea el programa, supongo que en ese caso no habrá problema en leer de manera simultanea los datos.
Otra sería usar la RAM como memoria intermedia, leer un fichero de sonido cargarlo en RAM y lanzarlo, mientras se abre y lee el segundo, pero esto implica que tiene que haber suficiente RAM para cargar el archivo y que hasta que no se lea totalmente el primer archivo, no se podrá leer el segundo, y si el primer archivo es gordo pueden producirse retrasos en la reproducción.
La tercera que se me ocurre, es un poco cutre, sería poner dos tarjeteros SD (uno por SPI y el otro SDIO), teniendo duplicados todos los archivos en ambas tarjetas.
Nunca había pensado en estas limitaciones con las SD, el poder abrir y leer varios ficheros simultáneamente.