Traductor de nivel para AVR y microSD

1

Quiero conectar una tarjeta microSD en mi AVR ATMEGA32, a través de SPI, que funciona con 5V. La tarjeta microSD creo que funciona con 3.3 V, por lo tanto, se debe conectar a través de un traductor de nivel bidireccional.

Encontré el traductor de este TI enlace . que acepta cualquier voltaje de 1.65 V a 3.6 V en la entrada A, y de 2.3 V a 5.5 V en la entrada B.

Mi problema es: ¿puedo conectar directamente la E / S del chip entre AVR y microSD? o es solo, como dice la hoja de datos, "para aplicaciones de drenaje abierto y push-pull"?

    
pregunta MrBit

3 respuestas

1

La especificación SD estipula 2.7V - 3.6V para toda la IO y la alimentación. El uso de cualquier otro voltaje probablemente causará la muerte de su tarjeta SD.

Suponiendo que está ejecutando la tarjeta SD en modo SPI (más común para microcontroladores pequeños), no necesita traducir la señal de la tarjeta SD al ATMega32, ya que 3.3V es una entrada ALTA válida incluso cuando se ejecuta a 5V.

Sin embargo, deberás traducir los 5V de la tarjeta ATMega32 a la tarjeta SD, y eso solo será de una manera. Un simple búfer de la serie 74 o puerta lógica de casi cualquier tipo hará el trabajo. Una común es la 74HC08 AND gate, con ambas entradas de una compuerta unidas para formar un búfer. Ejecute el chip desde 3.3V, alimente las señales de 5V directamente a las entradas a través de una pequeña resistencia de serie (digamos 1KΩ) y debería traducir las señales de 5V a 3.3V con bastante alegría.

simular este circuito : esquema creado usando CircuitLab

El 74HC08 (en común con los otros chips de la serie 74HC) tiene una sujeción de entrada bastante robusta. Cualquier voltaje que sea mayor que Vcc + 0.5V, por lo que cualquier valor superior a 3.8V en este caso, se enruta a través de diodos de sujeción de entrada al riel Vcc, fijándolo a Vcc + 0.5V, por lo tanto 3.8V. Esa corriente debe limitarse por debajo del "límite de corriente de sujeción de entrada", que es el límite de 20 mA. Los resistores de 1KΩ limitan la corriente a un pequeño (\ $ 5 - 3.8 = 1.2, \ frac {1.2} {1000} = 0.0012 \ $) 1.2mA.

    
respondido por el Majenko
0

El voltaje de alimentación de la tarjeta SD es un "estándar", en Especificaciones SD, parte 1, física Especificación de capa versión 4.10 , indica que el voltaje de operación debe ser de 2.7V ~ 3.6V, para que pueda usarlo con seguridad a 3.3V.

Si las E / S de su tarjeta microSD son tolerantes a 5 V, entonces ciertamente puede conectarlas directamente, pero nunca he visto una tarjeta así. Y para el convertidor de voltaje, el TXS0106 debería estar bien, y la vieja 74LVC4245A también puede ser una opción. En el documento de NXP: enlace , la mayoría de las E / S son push-pull, así que use un traductor con push salida de tracción tal vez mejor.

    
respondido por el diverger
0

su atmega debe ser de 3,3 V alto tolerante al estado para que pueda usar los datos entrantes sin nivel de traducción y para la tarjeta SD puede usar simplemente el divisor de voltaje de resistencia. Usé esa configuración con uart con fotos y funcionó bien.

    
respondido por el erkan

Lea otras preguntas en las etiquetas