TODOPIC

Microcontroladores PIC => Lenguaje C para microcontroladores PIC => Mensaje iniciado por: soymoe en 19 de Septiembre de 2013, 09:45:32

Título: problema con adc 12f675
Publicado por: soymoe en 19 de Septiembre de 2013, 09:45:32
Tengo un problema para leer un pote con el PIC 12f675 en ccs, esta es la configuracion, uso el AN3

Código: [Seleccionar]
setup_adc_ports(sAN3|VSS_VDD);
   setup_adc(ADC_CLOCK_INTERNAL);
   set_adc_channel(3);
   delay_us(20);
 ValorPote=read_adc();
Me da como que la lectura es siempre 0V
Título: Re: problema con adc 12f675
Publicado por: MGLSOFT en 19 de Septiembre de 2013, 09:54:41
Asi como esta te compila??
Título: Re: problema con adc 12f675
Publicado por: Diego E. en 19 de Septiembre de 2013, 13:19:53
Hola, intente deshabilitando el comparador

setup_comparator(nc_nc_nc_nc);

Saludos
Título: Re: problema con adc 12f675
Publicado por: BrunoF en 19 de Septiembre de 2013, 14:15:05
Y seguro que el pin está configurado como entrada?
Título: Re: problema con adc 12f675
Publicado por: MGLSOFT en 19 de Septiembre de 2013, 14:35:17
Mejor porque no pones todo el codigo que hiciste ??
De ese modo tendremos menos consultas para hacerte.
Hasta es probable que si dibujas a mano el esquematico, escaneas y muestras el circuito, podremos ayudarte mejor.

En las lineas de codigo que has puesto no se ven problemas, pero como dice Bruno, si despues de la configuracion del AD, configuras el pin como salida en otro lugar, ya no tendras conmversiones...
Título: Re: problema con adc 12f675
Publicado por: soymoe en 19 de Septiembre de 2013, 19:25:59
Mejor porque no pones todo el codigo que hiciste ??
De ese modo tendremos menos consultas para hacerte.
Hasta es probable que si dibujas a mano el esquematico, escaneas y muestras el circuito, podremos ayudarte mejor.

En las lineas de codigo que has puesto no se ven problemas, pero como dice Bruno, si despues de la configuracion del AD, configuras el pin como salida en otro lugar, ya no tendras conmversiones...
Estuve experimentando y el problema efectivamente no es el conversor A/D, sino las operaciones que hacia.
Loc que pasaba era que hacia (valorpote/255) y me daba cero porque declaraba mal las variables, ahora lo solucione. Un error de principiante en ccs. Gracias a todos por las respuestas.