4 votos

Procesador de restablecimiento de comunicaciones SD

He implementado una combinación SD/FAT en un procesador Renesas RL78/G13. La tarjeta SD está siendo manejada usando SPI.

Se ha comprobado que el código funciona en dos placas de destino personalizadas utilizando una tarjeta de 2 GB: la SD puede inicializarse correctamente a través del middleware FAT y se puede crear un archivo en la tarjeta y escribir en él. El resultado puede confirmarse conectando la tarjeta a una máquina Windows y leyendo el archivo.

De repente, como por arte de magia, la tarjeta SD dejó de funcionar recientemente. Utilizando un depurador, localicé el problema hasta la primera vez que la secuencia de inicialización de la FAT intenta realizar una operación de lectura de datos.

El envío de CMD17 (Read Single Block) y su respuesta son manejados correctamente, pero cuando el paquete de datos es fichado (dummy 0xFF fichado en SO), el procesador parece reiniciarse (obtengo código pre-main siendo ejecutado, lo cual puedo confirmar a través de mi registro de depuración).

Me pregunto si la potencia de la SD es un problema. Debido a otros aspectos del diseño de la placa, estamos viendo ~2,9V para la alimentación de la SD y las comunicaciones SPI. Sólo puedo ver referencias a 3,3V para SD SPI, pero ¿realmente Necesito para ser exactamente eso? ¿Podría ser esta la causa del problema, o es una pista falsa y hay otro razonamiento?

Cualquier ayuda será muy apreciada.

5voto

xilun Puntos 261

La especificación de la memoria SD versión 1.01 establece un voltaje operacional de 3,1 a 3,5V, por lo que estás fuera de ese rango. Además, la especificación permite que se consuman hasta 50mA en un periodo de 400uS y los picos pueden ser mayores, por lo que, a menos que tengas un condensador de tamaño suficiente para actuar como reserva durante esos picos, puedes tener pequeñas caídas en la fuente de alimentación que provoquen un reinicio del procesador.

También podría tratarse de un problema de software que provoque un reinicio de watchdog u otra condición indefinida si la tarjeta SD no responde como se espera debido a que se opera fuera del rango especificado. De cualquier forma, valdría la pena llegar al fondo de los problemas de la fuente de alimentación.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X