Conexión de área externa ATMega328


10

De la hoja de datos ATMega328 , sección 24.9.1:

Las opciones de referencia de voltaje interno no pueden usarse si se aplica un voltaje de referencia externo al pin AREF.

De las páginas de referencia de Arduino :

Alternativamente, puede conectar el voltaje de referencia externo al pin AREF a través de una resistencia de 5K, lo que le permite cambiar entre voltajes de referencia externos e internos. Tenga en cuenta que la resistencia alterará el voltaje que se usa como referencia porque hay una resistencia interna de 32K en el pin AREF. Los dos actúan como un divisor de voltaje, por lo que, por ejemplo, 2.5V aplicado a través de la resistencia producirá 2.5 * 32 / (32 + 5) = ~ 2.2V en el pin AREF.

La hoja de datos ATMega328 confirma la referencia de "resistencia interna de 32k" en la tabla 29.16 Características del ADC con: Resistencia de entrada de referencia = 32 kOhm.

Dicho esto, las dos declaraciones anteriores parecen oponerse entre sí. Tengo una aplicación con algunos sensores con salida a escala completa de 0-5V y otros con salida a escala completa de 0-1.8V. La aplicación se beneficiaría de la mayor resolución de cambio a AREF de 1.8V cuando muestree los sensores de 1.8V y cambie a la referencia AVCC interna para los sensores de 5V.

Las páginas de referencia de Arduino sugieren que es algo correcto, dado que se ha acoplado al AREF de 1.8V a través de una resistencia en serie de 5kOhm y ha tenido en cuenta el divisor de voltaje implícito con la resistencia interna de 32kOhm. ¿Es solo un mal consejo de la referencia de Arduino, o es de hecho una práctica común hacer este tipo de cosas? ¿La declaración de Atmel se limita a los voltajes externos aplicados a AREF sin una resistencia limitadora de corriente externa (y si es así, ¿por qué, dada la resistencia interna de 32k)?

Por otro lado, obviamente, uno podría lograr un resultado similar con un amplificador operacional construido adecuadamente para escalar las señales de 1.8V hasta 5V, pero la complejidad y las partes adicionales parecen ser un desperdicio si el ADC a bordo también puede manejarlo aprovechando la referencia de voltaje cambiable. Del mismo modo, si pudiera convencerse de que la señal detectada no excedería 1.1V, podría aprovechar la referencia de voltaje interno. Una vez más, me parece más elegante usar el regulador de 1.8V con el que estoy alimentando mis sensores de bajo voltaje para establecer la referencia.


Además, ¿puede reformular "La declaración de Atmel está restringida a voltajes externos sin obstáculos aplicados a AREF?" No entiendo "restringido a sin obstáculos". Gracias.
Telaclavo

@Telaclavo He aclarado la declaración (con suerte)
vicatcu

Creo que acabo de ver de dónde puede venir tu confusión, pero ¿puedes publicar un enlace al esquema del Arduino específico que estás utilizando?
Telaclavo

@Telaclavo sin Arduino específico en mente, el Uno sería suficiente como ejemplo. En la placa base, AREF no está conectado a ninguna fuente de voltaje, sino que simplemente se desacopla a GND a través de un condensador de 100nF. Si tuviera un regulador de 1.8V, en un blindaje, por ejemplo, en principio podría conectarlo a AREF a través de los encabezados del blindaje por medio de una resistencia de 5kOhm para hacer referencia al ADC ATMega328 a 1.8V, luego cambiar a la referencia AVCC interna (que está conectado a 5V en el Uno) en software para hacer referencia al ADC ATMega328 a 5V.
vicatcu

Ok, primero pensé que la resistencia de 5 kohm está incluida en los Arduinos, pero no lo está. Acabo de actualizar mi respuesta. Y creo que su confusión vino de no reconocer que la resistencia de 32 kohm va de AREF a tierra . De lo contrario, no entendería tu "y si es así, ¿por qué, dada la resistencia interna de 32k?"
Telaclavo

Respuestas:


8

No veo ningún problema con la aplicación de un voltaje externo, a través de una resistencia de 5 kohmios, a la entrada de referencia Arduino. O mejor, con el uso de un divisor de resistencia, de modo que convierta 5 V en su voltaje AREF deseado, mientras que al mismo tiempo exhibe una resistencia de fuente de aproximadamente 5 kohm. Este segundo requisito no tiene que ser exacto. Eso es solo para limitar la corriente que fluirá desde AVCC a tierra, a través de los circuitos externos.

esquemático

Si desea terminar con 1.8 V en la entrada AREF de la MCU, simplemente elija R1 y R2 para que 1.8 V y 5 kohm.VUNARmiF=5 5·R2El |El |32000R1+(R2El |El |32000)=RsoturCmi=R1El |El |R2

Cuando necesite trabajar con el rango [0, 1.8] V, desactive las referencias internas de ATMega, y cuando necesite trabajar con [0, 5] V, habilite la referencia AVCC interna (si eso es 5 V) . Si el MOSFET que se muestra en la Fig. 24-1 (que conecta las referencias internas a la línea AREF) tiene una resistencia de encendido muy inferior a 5 kohm (lo que supongo que tiene), el circuito interno verá AVCC. En esta segunda situación, el consumo de corriente del AVCC interno (se supone 5 V) a su divisor de resistencia externo será 1 mA, pero eso no es un problema.

En resumen: sería un mal consejo si algo pudiera dañarse, pero 1 mA no dañará nada.


+1 por llamar a la figura 24-1 ... lo que me sugiere (también) que una resistencia limitadora de corriente en AREF es una apuesta segura.
vicatcu

1
Creo que prefiero aceptar una pequeña caída de voltaje en AREF y usar una sola resistencia externa de 5kOhm para suministrar 1.8V desde un regulador ... pero encuentro que su respuesta es digna de aceptación
vicatcu

1

Gran explicación sobre la configuración interna de Aref PIN y también sobre el papel que desempeña este pin cuando se usa el ADC de Arduino.

Aquí están mis dos centavos. Acabo de modificar un poco el esquema para aclarar que la resistencia de 32 kOhms es interna. Además de eso, incluí una configuración alternativa para hacer más seguro el uso de un Vref externo. Las ecuaciones para R1 y R2 se obtienen después de limitar la corriente a través de ellas a 1 mA. Se ha considerado el peor escenario (interruptor interno cerrado accidentalmente) para obtener las fórmulas para R1 y R2.

Salud
ingrese la descripción de la imagen aquí

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.