Pregunta:
Tarjeta SDHC, un escudo microSD y Arduino Duemilanove
Ashley Hughes
2010-03-29 14:00:14 UTC
view on stackexchange narkive permalink

Obtuve un nuevo escudo microSD de LittleBird y tengo algunos problemas con él.

Descargué la biblioteca de muestra que decía que usaba, agregué una tarjeta microSD y esperaba que funcionara ... No se inicializará por alguna razón, y he buscado un poco en Google y no veo cómo hacerlo funcionar. Todo el mundo simplemente dice: use esta biblioteca, use esa.

Hardware

¿Es la tarjeta SDHC parte del problema ?

Trabajo desde una Mac e incluso formateé la tarjeta en una máquina con Windows XP a Fat 16, pero aún así no tuve suerte.

No he visto el código LBE, ¿da más información sobre por qué no se inicializa? Además, ¿la lista de hardware está completa o hay otros sensores / lo que no esté conectado?
relacionado: [Arduino Saving Data to SD Memory Module] (http://electronics.stackexchange.com/questions/66/arduino-saving-data-to-sd-memory-module)
Seis respuestas:
#1
+2
jluciani
2010-03-29 18:15:27 UTC
view on stackexchange narkive permalink

Estoy agregando una tarjeta microSD a mi nueva placa '644 para hacer un registrador de datos de bajo costo. Todas mis placas son de 3.3 V, por lo que no tendré los problemas de 5 V. He probado tres bibliotecas diferentes y ninguna de estas inicializa las tarjetas :( También probé tres tarjetas SD y SDHC diferentes de dos fabricantes diferentes (todas de gran capacidad) y ninguna se inicializó.

Tengo mi analizador lógico encendido la placa ahora, y estoy revisando la especificación. Parece que el procedimiento de inicialización es diferente para la tarjeta más nueva. Estoy casi seguro de que la SDHC es diferente. No hay respuesta a la rutina de inicialización.

De un Al buscar en Google, descubrí lo siguiente:

NB : (No he verificado esta información, solo la encontré;)

  • Usar los divisores de resistencia para traducir de 5 V a 3.3 V puede ser problemático debido a la pérdida de velocidad de borde debido a la resistencia de la serie. No estoy seguro de cuánta velocidad de borde pierde o qué tan sensibles son las diferentes tarjetas a esto. Ya que esto no es un problema para mi placa de 3.3 V no estaba preocupado.

  • Si los pines de E / S no están a 0 V cuando se aplica energía a la tarjeta, la tarjeta puede b e inicio en un estado desconocido. Lamentablemente, la hoja de datos no menciona si existe un procedimiento de inicialización del software que pueda usarse para restablecer la tarjeta a un estado conocido.

  • En la versión 2.00 de la especificación SD, el procedimiento de inicialización cambió. No estoy seguro de si las bibliotecas admiten estos cambios.

  • Algunas personas han informado que han tenido éxito al cambiar a tarjetas de baja capacidad. Tenía la esperanza de encontrar poca capacidad en la tienda de suministros de oficina, pero la más pequeña que tenían en stock era de 2 GB. Sospecho que puede que no sea del tamaño de la tarjeta, sino de la antigüedad (ya que la mayoría de las tarjetas más pequeñas también son tarjetas más antiguas). ).

  • La compatibilidad con SPI es opcional para microSD. Me sorprendería que las tarjetas no admitieran SPI, ya que se requiere para los otros formatos. Esperaba encontrar una lista de cartas que fueran conocido por soportar SPI, pero no pude encontrarlo.

Ahí es donde estoy. Desafortunadamente, probablemente no tendré mucho tiempo para trabajar en esto durante la semana. Mi siguiente paso es revisar la especificación y escribir una función de inicialización simple y verificar la salida en el analizador lógico.

He usado divisores de resistencia para reducir una señal de 5v a 3v3 sin problemas en dispositivos SD sobre SPI y no he tenido problemas. Por lo que he visto en el alcance, no es un problema importante a velocidades más lentas. ¡Es bueno señalarlo para cualquiera que ejecute una tarjeta a velocidades más altas!
Además, iba a sugerir probar una tarjeta más pequeña antes, pero estaba ocupado en el trabajo. No he encontrado una tarjeta que no haya funcionado, pero he oído que si mantiene las tarjetas a 2GB o menos, su suerte es mejor. Como referencia, todas mis tarjetas SD que he usado en proyectos son sobras / recuperaciones que tienen años. Creo que el más nuevo que he probado tiene alrededor de un año.
Este debe ser el día opuesto. No he encontrado una tarjeta que funcione;) Si tiene información sobre las tarjetas que funcionan (mfg / mfg pn), sería genial. Además, ¿qué hardware / software está utilizando? Gracias.
#2
+2
raphael
2010-03-31 20:22:55 UTC
view on stackexchange narkive permalink

A menos que la biblioteca incluya específicamente compatibilidad con SDHC, no funcionará. SDHC y SD tienen diferentes modos de direccionamiento y algunas diferencias en sus rutinas de inicialización, y es suficiente para evitar que funcione. Obtén una tarjeta SD de 2GB o menos.

Veré si puedo conseguir uno, creo que es un poco raro ahora
#3
+1
Tim Gooding
2010-03-29 16:19:02 UTC
view on stackexchange narkive permalink

También obtuve uno de estos, de SparkFun, y solo funcionó. Revisé los comentarios en la parte inferior de la página del producto y puede haber un par de problemas:

  1. El tamaño de su tarjeta
  2. 3.3 V -> 5 V incompatibilidad.

El último comentario parece prometedor. Utilicé el esquema de diodos de SparkFun para conectar un sensor de presión de 3.3 V a un Arduino, y funcionó bien.

Consulte SparkFun microSD Shield .

He diseñado algunas placas con tarjetas SD (no micro, pero electrónicamente creo que el SPI es el mismo). Definitivamente comenzaría mirando los niveles de voltaje, porque solo pude obtener resultados confiables en 3v3. 5v está buscando problemas.
#4
+1
jluciani
2010-04-16 00:57:48 UTC
view on stackexchange narkive permalink

¡Creo que encontré mi problema de microSD! Con suerte, esto ayudará a alguien más.

Mi problema principal fue un error esquemático :( Mientras buscaba el error esquemático encontré un par de otros problemas potenciales -

  • Para la operación SPI, todos los RSV líneas (pines 1 y 8) deben tener extracciones aunque no se utilicen (hoja de datos microSD de Samsung pg 14 (versión 0.3, 7 de marzo de 2007)). No estoy seguro si esto es un requisito de Samsung o un requisito de MicroSD. en todas las líneas RDAT y RCMD.

  • Se requieren al menos 8 pulsos de reloj antes de que la tarjeta dé una respuesta a un comando. Esta espera está etiquetada como NCR en el Samsung DS y tiene un valor mínimo de 8 (pulsos) y un valor máximo de 64 (pulsos).

He probado una tarjeta uSD Transcend 1GB y SanDisk 2GB. Ambas inicializan en estado inactivo . Ahora voy a terminar las bibliotecas uSD para mis placas '328 y' 644. Si descubro cualquier otro problema de hardware o software, intentaré actualizar esta publicación.

#5
+1
Philippe
2011-05-18 18:13:00 UTC
view on stackexchange narkive permalink

No tengo ninguno de estos juguetes, pero vi este requisito para un módulo TFT / LCD que incluya una ranura SD: "Debes usar una tarjeta micro SD que admita la interfaz SPI y que tenga 2GB o menos. Ten en cuenta que no todas las tarjetas uSD admiten SPI ".

http://www.robotshop.com/eu/4d-systems-3-2-qvga-touch-screen-lcd-3.html

#6
  0
jeremy
2010-03-30 17:58:14 UTC
view on stackexchange narkive permalink

Es poco probable que este sea su problema, pero el estándar microSD no incluye la compatibilidad con SPI como obligatoria. Hace un tiempo, tenía una microSD específica que no hablaba con mi AVR y podría haber jurado que era porque le faltaba una interfaz SPI.

¿Quizás pruebe con otra tarjeta de una marca diferente?



Esta pregunta y respuesta fue traducida automáticamente del idioma inglés.El contenido original está disponible en stackexchange, a quien agradecemos la licencia cc by-sa 2.0 bajo la que se distribuye.
Loading...