Autor Tema: cosa curiosa en el conversor a/d ¿que esta pasando?  (Leído 1828 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado lolos123

  • PIC12
  • **
  • Mensajes: 53
cosa curiosa en el conversor a/d ¿que esta pasando?
« en: 09 de Mayo de 2005, 13:55:00 »
Muy buenas, voy a exponer lo que me está pasando con el conversor a/d a ver si me podeis orientar.

Estoy usando un 16f876 (conversor de 10 bits), uso referencia externa 2,04v (mínimo es 2 si no estoy equivocado) y la señal analogica por AN0.

Bien si no estoy confundido sale una resolucion de mas o menos 2mv.

Pues bien con un potenciometro le meto por la entrada analogica unos milivoltios,
con una rutina para pasar bcd-ascii DESCOMPONGO ADRESH,ADRESL de forma que tengo el valor de ADRESH,ADRESL en UNIDADES,DECENAS,CENTENAS.....
estos valores los trasmito en serie al PC.

En resumen se supone que esoy viendo en el pc el resultado de la conversion que sera la mitad de lo que le meto ya que resolucion es de 2 mv.

Pues eso parece que va perfecto hasta que llego a unos 202 mv que en lugar de ver en el pc 101 (mas o menos) sale 256 y esto se mantiene en todo el margen de 202mv hasta 512 mv en el que realmente si deberia salir 256. si continúo aumentando los mv 600,726,etc sigue saliendo bien la cosa.Si le meto 0v da 0000 y si le meto 2.04 (como la referencia) me sale 1023.

¿Estoy confundido en algo?¿esta fastidiado el conversor? ¿teneis idea de que está pasando?.

Es la primera vez que uso un PIC y me he encontrado con ésto.

GRACIAS POR VUESTRO TIEMPO


Desconectado antoniof

  • Moderadores
  • PIC24F
  • *****
  • Mensajes: 729
RE: cosa curiosa en el conversor a/d ¿que esta pasando?
« Respuesta #1 en: 09 de Mayo de 2005, 17:40:00 »
Buenas.

Tiene toda la pinta de ser el problema de la rutina de conversión de bin a bcd, ya que los números mayores a 99 te los convierte a 256. cuando metes un bit más de los 8, te vuelve a funcionar. Revisa bien esta rutina. Una forma de comprobar que el conversor funciona bien es enviar los datos al PC sin convertir a bcd.

Desconectado lolos123

  • PIC12
  • **
  • Mensajes: 53
RE: cosa curiosa en el conversor a/d ¿que esta pasando?
« Respuesta #2 en: 10 de Mayo de 2005, 13:18:00 »
Gracias antoniof por responder.

La rutina de conversion creo que está bien, éste mismo programa en el simulador PIC SIMULATOR IDE parece que todo va bien y no da ese problema, pero bueno la volvere a revisar.

Una cosa más, ¿El problema puede venir al estar trabajando tan cerca del límite que dice el fabricante de 2 v como voltaje diferencial mínimo?¿hay algún problema por trabajar en ese limite?

Yo tenía puesto como referencia 2.02 V obtenidos con un par de resistencias de la alimentacion del micro(esto era para probar funcionamiento del conversor)

reitero las gracias por vuestro tiempo.

Desconectado antoniof

  • Moderadores
  • PIC24F
  • *****
  • Mensajes: 729
RE: cosa curiosa en el conversor a/d ¿que esta pasando?
« Respuesta #3 en: 10 de Mayo de 2005, 17:29:00 »
Bueno, si la rutina es correcta prueba a meter una referencia mayor. Yo la única referencia que he utilizado con los PIC es la de 5V de alimentación. Pensé que tenías una referencia de voltaje "seria". Si utilizas dos resistencias la referencia te va a variar mucho en funcion de temperatura, rizado de la alimentación, etc. para probar la rutina mete lols 5V de referencia y luego pruebas otros valores más bajos.

Ya sabes, 5V/1024 = 4.882 mV por bit.

Desconectado lolos123

  • PIC12
  • **
  • Mensajes: 53
RE: cosa curiosa en el conversor a/d ¿que esta pasando?
« Respuesta #4 en: 11 de Mayo de 2005, 14:21:00 »
Efectivamente no era una referencia seria, era para probar.

Aún así te comento lo que estoy haciendo ahora,con la misma referencia cutre,pero añadiéndole un par de condensadores.

He cogido directamente el ADRESL y lo he enviado tal cual, sin hacerle nada, para evitar posibles problemas en las operaciones,etc.

Pues bien, ahora recibo los caracteres equivalentes al valor de ADRESL en el PC y los compruebo con una tabla ASCII (pero extendida, o algo así ) .

El problema persiste, es decir, va todo bien pero llega un valor de la entrada en el que salta,no sale lo que "debería" salir, lo curioso es que sin cambiar nada del programa voy aumentadndo la referencia externa (2,1v 2,2 2,3 ) y ese salto se va produciendo cada vez a un valor de entrada mayor.

Seguramente llegará un valor de referencia en el que no de ese salto, lo he provado con referencia interna y no se produce salto, pero claro no tengo tanta resolución.

Yo supongo que estoy usando bien el conversor, configuracion, tiempo de muestreo,  uso interrupciones,etc porque si no, digo yo que no fallaría solo en un margen de conversión.

Bueno espero no aburrir al personal, seguiré aquí haciendo pruebas.


Gracias antoniof por el interes mostrado, y por tu paciencia con un novato.

Desconectado antoniof

  • Moderadores
  • PIC24F
  • *****
  • Mensajes: 729
RE: cosa curiosa en el conversor a/d ¿que esta pasando?
« Respuesta #5 en: 11 de Mayo de 2005, 17:31:00 »
Pues me tienes desconcertadoloco Si a medida que subes la referencia te cambia el valor de "salto" prueba a dar más tiempo al conversor para que termine... aunque esto es dar ya palos de ciego. Prueba antes de nada a cambiar el PIC por otro nuevo a ver si se comporta igual.

Desconectado kuauhtemok

  • PIC16
  • ***
  • Mensajes: 116
RE: cosa curiosa en el conversor a/d ¿que esta pasando?
« Respuesta #6 en: 11 de Mayo de 2005, 17:36:00 »

Es cierto yo tenia un problema similar y lo solucione metiendo varios NOP´s despues de cada conversion. (unos 6)

Esto que acabo de decir es cierto.
La felicidad no es mas q la ausencia momentanea del dolor

Desconectado lolos123

  • PIC12
  • **
  • Mensajes: 53
RE: cosa curiosa en el conversor a/d ¿que esta pasando?
« Respuesta #7 en: 12 de Mayo de 2005, 13:14:00 »
Gracias por seguir ahí,en el tema.

Una cosa,¿el tiempo se lo aumentaría en los nop que ya le tengo puesto para la adquisicion ?¿no es así? Luego supongo que el entra en la interrupcion cuando haya completado la conversion.

El tiempo que le voy a dejar entre una captura de valor analogico y otra será de varios minutos, así que por ahí no creo que se queje, pero en fin yo ya no se si es defecto del animal (del PIC) o del otro animal (yo).

Voy a aumentar esos nop, a ver que pasa y también trataré de probar con otro PIC.

Me he planteado trasladarle este problema al fabricante¿alguien ha relalizado alguna consulta al  fabricante?

Bueno, gracias por vuestro tiempo.

Desconectado fenix_jn

  • PIC18
  • ****
  • Mensajes: 418
RE: cosa curiosa en el conversor a/d ¿que esta pasando?
« Respuesta #8 en: 12 de Mayo de 2005, 17:54:00 »
No necesitas minutos, con tan solo esperar q el flag ADIF este en "1" es suficiente, porq implica q el conversor ha completado la operacion, generalmente esa operacion dura entre 20 a 50 µS dependiendo del PIC, de la seleccion de la señal de reloj del conversor y de algunos factores externos (temperatura).


 

anything