Conectando el pin ADC a op. amperio. la salida distorsiona la señal

2

Estoy usando un microcontrolador STM32 Cortex M3 y he configurado el ADC. He verificado que el ADC funciona al medir diferentes voltajes en el microcontrolador eval. junta.

Cuando conecto mi ADC a la salida del amplificador operacional (MCP6002), la señal se distorsiona. A continuación se muestra una imagen que muestra cómo se ve la señal en la salida antes y después de que conecte el ADC.

El pin ADC está configurado como entrada analógica (como debería). Al conectar los pines con otra configuración, la señal no se distorsiona. La op. amperio. Está alimentado por el microcontrolador eval. junta.

Cualquier ayuda es muy apreciada! =)

EDITAR: Esquema añadido. Op. Actual amperio. se utiliza MCP6002 en lugar de los que se muestran en el circuito. Cuando conecto ADC1 al ADC en mi microcontrolador, la señal se distorsiona.

EDIT2: Observación adicional: cuando el alcance y la colocación del ADC al riel de alimentación de 3.3V provisto por el microcontrolador, el alcance lee 3.3V. Al hacer lo mismo con GND leo 0V. Pero cuando se conecta a la GND virtual (3.3V / 2) realizada por uno de los MCP6002 op. amperios el resultado es el mismo que la imagen distorsionada a continuación.

EDIT3: Acabo de configurar un nuevo ADC con configuraciones idénticas (las compararé de nuevo) y funciona. Supongo que encontraré algún error en el código / configuración en algún lugar. Te lo haré saber.

EDIT4 / Solución: Estoy de nuevo sorprendido por mí mismo. El mismo pin se ha configurado como un push-pull digital en otra parte del código, pero este módulo ya no lo utiliza. Este código ha estado presente durante más de un año, pero ya que probablemente siempre se haya inicializado antes del ADC, el ADC ha estado sobrescribiendo la configuración del pin y todo ha funcionado bien. Esto fue hasta que la inicialización del ADC se movió y se hizo antes de la otra configuración, lo que hizo que la configuración del ADC se sobrescribiera como un push-pull de entrada digital. Deseo agradecer a todos por la gran ayuda y aporte y por su tiempo.

    
pregunta iQt

3 respuestas

1

De nuevo estoy asombrado por mí mismo. El mismo pin se ha configurado como un push-pull digital en otra parte del código, pero este módulo ya no lo utiliza. Este código ha estado presente durante más de un año, pero ya que probablemente siempre se haya inicializado antes del ADC, el ADC ha estado sobrescribiendo la configuración del pin y todo ha funcionado bien. Esto fue hasta que la inicialización del ADC se movió y se hizo antes de la otra configuración, lo que hizo que la configuración del ADC se sobrescribiera como un push-pull de entrada digital. Deseo agradecer a todos por la gran ayuda y aporte y por su tiempo.

    
respondido por el iQt
3

Algunas cosas de las que asegurarse:

  • Asegúrese de tener condensadores de desacoplamiento (por ejemplo, 100nF) en todos los pines de alimentación opamp.
  • Como la configuración de ganancia unitaria es sensible a la carga capacitiva (el pin de entrada ADC), intente aislarla usando una resistencia en serie (entre la salida opamp y la entrada ADC), el valor dice entre 220 between y 820Ω.
  • Asegúrese de que no haya nada más que afecte a la entrada ADC, y que esté configurado correctamente como entrada analógica; verifíquelo con una fuente conocida, como un generador de señales, para confirmar que no suceda lo mismo.
  • Asegúrese de que la sección analógica y la unidad de usuario compartan una base común.
  • Compruebe que ninguna de las opamps esté oscilando en ningún punto.
  • Verifique que los rieles de suministro estén bien (ver también bajo carga)

Háganos saber cómo va, debería ser un problema bastante fácil de encontrar, pero sin duda Murphy tendrá algo que decir al respecto ;-)
Un esquema adecuado con todas las partes presentes sería útil (es decir, supongo que los opamps tienen topes de desacoplamiento pero no los incluyó en el esquema LTSpice)

    
respondido por el Oli Glaser
1

Desde el nivel de voltaje que se ve en el pin (0.4V), tengo un 90% de que supongo que hay un cortocircuito involucrado. Podría ser la salida GPIO de ARM habilitada y conducir ese pin a GND. Intentaría medir la corriente que fluye hacia el pin de entrada ARM.

    
respondido por el Laszlo Valko

Lea otras preguntas en las etiquetas