5 votos

Datos del CAD.. ¿Hay algo sospechoso?

Amigos,

He estado jugando con el STM32F2 (probablemente el ARM Cortex M3 más avanzado del mercado). Sin embargo, esta no es una pregunta específica del procesador.

Tengo una configuración en la que tengo 0V muestreado por varios pines del ADC. Leo y vuelco los valores. Cuando examino los valores, espero ver todos los ceros, en lugar de eso veo la mayoría de los ceros pero un montón de valores hasta 100. (es decir, este es un ADC de 12 bits con 4096 niveles, por lo que 100 es aproximadamente significa ~3,3/4096*100 = 80mV)

Sé de hecho, mi 0 voltios es realmente 0V (es decir, tierra) .. Así que, 100 de 4096 .. ¿Esto es lo que se espera? Nunca he jugado con otros chips habilitados para ADC por lo que no puedo calibrar este error es esperado o no. ¿Alguna idea?

27voto

RelaXNow Puntos 1164

Además de lo que dijo stevenvh, asegúrate de que estás ejecutando el A/D correctamente dentro del procesador. No estoy familiarizado con ese procesador, pero los que he visto tienen todos un sample and hold delante del A/D interno. A menudo hay uno o un pequeño número de convertidores A/D reales, con un mux delante de la muestra y retención para seleccionar el único canal para leer ese tiempo. El muestreo y retención tarda un tiempo finito en asentarse. Tienes que asegurarte de que se ha dado suficiente tiempo después de cambiar el mux antes de que el muestreo y retención pase al modo de retención y el A/D haga la conversión.

Otro posible error es la impedancia de la señal que conduce al pin A/D. La hoja de datos debería tener una especificación para eso, y podría ser mucho más baja de lo que piensas. Para evitar errores de offset, generalmente no hay amplificador en el chip. La muestra y retención es sólo un condensador con un FET que lo conecta al pin de entrada en el modo de muestra. La impedancia que conduce el pin necesita estar por debajo de algún valor para obtener la precisión especificada y el tiempo mínimo de muestreo.

Comprueba también qué utiliza exactamente el A/D para sus referencias de voltaje, particularmente la referencia del lado bajo en tu caso. El valor por defecto es probablemente la tierra regular del procesador. Sin embargo, también podría tener una clavija de tierra analógica separada, y a veces una clavija de entrada analógica separada puede ser utilizada como la referencia negativa. Comprueba que todo esto está configurado tal y como lo has previsto.

Como dijo stevenvh, 80mV es demasiado alto para cualquier error normal. A lo sumo se esperaría una cuenta o tal vez dos cuando realmente debería estar leyendo 0. Algo está definitivamente mal con su configuración. Ten en cuenta que esto incluye la configuración del uso del A/D por el firmware.

3voto

lillq Puntos 4161

¿Cómo está conectada la entrada del ADC a tierra? Los 80mV pueden provenir del ruido de los componentes anteriores. Si el ADC está conectado directamente a tierra, no deberías obtener lecturas tan altas. (Pero incluso entonces tampoco son necesariamente todos ceros. Un 1 o 2 ocasional es posible).

  1. Comprueba si tu alimentación está decentemente desacoplada: tapas de 100nF cerca de los pines de alimentación.
  2. Comprueba si la tensión de referencia del ADC está decentemente desacoplada. No se limite a conectar a \$V_{DD}\$ pero desacoplar a través de un filtro RC, o, mejor aún, un filtro LC.
  3. Asegúrate de tener una tierra sólida: preferiblemente un plano de tierra, en cualquier caso trazos cortos y anchos.
  4. Mantenga la traza de la entrada del ADC corta y de baja impedancia. Una traza de alta impedancia funcionará como una antena, y recogerá todo tipo de ruido. (Probablemente no sea un gran problema: los ADCs suelen tener una entrada de baja impedancia). No utilice un cable de prueba en bucle para conectar la entrada del ADC a tierra.

Si estás seguro de haber prestado atención a estos puntos, la lectura nunca debería ser de 80mV. ¿Podrías publicar una foto de la placa?

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