TODOPIC

Microcontroladores PIC => Lenguaje C para microcontroladores PIC => Mensaje iniciado por: mirazulado en 22 de Agosto de 2005, 14:47:00

Título: Comparadores Analogicos
Publicado por: mirazulado en 22 de Agosto de 2005, 14:47:00
Buenas a todos.. estoy por trabajar por primera vez con los comparadores analogicos de un 16f628 para hacer un cargador de pilas y tengo algunas dudas. Primero, utilice el programa de ejemplo del CCS para manejo de los comparadores (Ex_comp.c) que funciono de maravilla y simule con Proteus, las dudas fueron que si seteo de la siguiente forma :
   setup_comparator(A3_VR_A2_VR);//// entrada por A3 y A2 + referencia
   setup_vref(VREF_HIGH|15); //////////  referencia en 3.6V
   enable_interrupts(INT_COMP);
   enable_interrupts(GLOBAL);

cuando inicio la simulacion los registros del cmcon c2out y c1out siempre estan en 0 por mas que las tensiones en A3 y A2 sean inferiores que la referencia, la unica forma de que c1out y c2out sea 1 es que la tension de entrada supere la referencia y que despues descienda por debajo de la referencia... Esto es siempre asi ?
La solucion que encontre es primero setear la referencia a:
   setup_vref(VREF_HIGH|0); //////////  referencia en 0V para que A2 o A3 sean siempre superior a la referencia.
y depues a:
   setup_vref(VREF_HIGH|15); //////////  referencia en 3.6V, para que C2out y C1out dende el resultado correcto.
esto anda pero no se si es lo correcto..

Otra cosa hay alguna instruccion para leer los C1out y C2out o hay que definir dos bit y leerlos de ahi ?

Saludos a todos Mariano ..
Título: RE: Comparadores Analogicos
Publicado por: vszener en 23 de Agosto de 2005, 15:00:00
Ummm con respecto a los C1out y C2out  decir que en la libreria del pic 16f628a que esta en la carpeta devices del compilador CCS estan definidos como:

#bit C1OUT = 0x1f.6
#bit C2OUT = 0x1f.7

por lo tanto no tienes porque definirlos ya que estan definidos en la libreria del propio dispositivoGiño
Título: RE: Comparadores Analogicos
Publicado por: mirazulado en 24 de Agosto de 2005, 07:44:00
Mira vos.. tenes razon, ya estan definidos el C1OUT y el C2OUT en el 16F628.h..
Saludos Mariano..