controlando dispositivos SPI usando Arduino - diferentes voltajes

1

Mi placa arduino usa 5v para alimentar el chip atmega. Me preguntaba si hay algún problema con la alimentación de mi atmega a 5v, pero dime que el MCP4922 dac de 3.3v me importa. Es solo que he visto esquemas que usan los mismos voltios para todos los ic

    
pregunta Ageis

3 respuestas

2

Sí importa. El MCP4922 tiene un límite de voltaje de entrada de VDD + 0.3v en cualquier pin de entrada. Con una potencia de 3.3v, cualquier cosa por encima de 3.6v probablemente acabará con el chip . Y el Arduino ATMega tiene un corte de alto nivel de voltaje de entrada de VDD * 0.6. Con 5v de potencia de Arduino, eso significa que necesita ver al menos 5v * 0.6 = 3v en un pin de entrada para registrarse correctamente como una lógica ALTA. Así que esto debería funcionar de una manera antes de que necesites agregar cosas.

Sparkfun tiene un buen tutorial sobre cómo hacer que funcione entre dos chips de 5v y 3.3v, pero todos requieren componentes adicionales (algunas resistencias o diodos, o un mosfet). También profundiza más sobre los niveles de voltaje.

Pero lo más importante es por qué alimenta el ADC a un voltaje diferente al del Arduino, si tienes la fuente de 5v disponible. ¿Es esto simplemente un hipotético?

    
respondido por el Passerby
0

Hay varias formas de acomodar esta transición de nivel. La clave es NO para colocar 5V en una parte que se ejecuta a 3V o algo más bajo (como se indicó anteriormente). Así que las entradas MCP4922 de CS, SCK y SDI necesitan volátiles de entrada para coincidir con su VDD. Y si elige que sea 3V, esto se puede hacer usando un divisor de resistencia o 74HC4050 LVL CONVERTER , o Logic Level Converter de SparkFun o SparkFun's PCA9306 Desglose del traductor de nivel

En el lado opuesto, es aceptable que una salida de 3V entre en la entrada de 5V, siempre que el nivel alto de la salida del chip de 3V sea mayor que el nivel mínimo de las entradas. Detector alto de la entrada del chip. Que es a menudo el caso. Por lo tanto, a menudo ves partes que tienen uno de los pasos anteriores de Nivel de Voltaje Descendente MOSI, SCK y CS, mientras que no hay un Paso Arriba del MISO, en el Arduino.

    
respondido por el mpflaga
0

A menos que su dispositivo sea tolerante a 5V, que no es el MCP4922, no es una buena idea conectar 5V I / O a 3.3V I / O. Los diodos internos pueden ayudar, pero con el tiempo el dispositivo se destruirá. Es mejor usar técnicas para lidiar con esto, como usar los cambiadores de nivel.

    
respondido por el Gustavo Litovsky

Lea otras preguntas en las etiquetas