Autor Tema: Ayuda... ADC con PIC16F877A  (Leído 5420 veces)

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

Desconectado Enigma

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 609
    • www.toroscoleados.com
Ayuda... ADC con PIC16F877A
« en: 02 de Junio de 2007, 15:46:55 »
Hola que tal, muy buenas tardes, como verán soy nueva en este foro y acudo a ustedes por que de verdad necesito una ayudita pequeñita... Les  cuento...
Necesito por lo menos una idea de como hacer un convertidor análogico  - Digital con el PIC 16F877A... Necesito implementar este convertidor para poder visualizar una señal analógica en un display... La señal va de 0 a 10V, esta señal sale de un circuito acondicionador de señal conformado por un amplificador de Instrumentación y un inversor (de este sale la señal que requiero visualizar) cuya entrada va de 0mv a 15.972mV... bueno creo que esta información esta demás, pero se las comento para que vean de  donde surge el problema.... se aceptan todo tipo de sugerencias....

Muchas gracias y espero contar con su ayuda.... :-)

Atte: Enigma... La llanerita de Guayana :P
No hay nada como cabalgar en la sabana y sentir la brisa con olor a mastranto, bosta y ganado. ¡¡O Fortuna, velut luna, status variabilis, semper crescis, aut decrescis, vita detestabili!! Que viva el coleo, la musica LLanera y la gótica!

Desconectado PalitroqueZ

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 5474
    • Electrónica Didacta
Re: Ayuda... ADC con PIC16F877A
« Respuesta #1 en: 02 de Junio de 2007, 16:00:23 »
Hola Enigma y bienvenida al foro.

te podemos ayudar, pero debes darnos mas datos, por ej: en que lenguaje de programación ? asm, c, basic?

¿y si ya tienes algo montado? ¿en que parte tienes el problema?

respecto a la señal de salida, te cuento que tienes que ajustarla a un voltaje un poco menor al que alimenta el pic (Vdd)

tu señal tendría que ir (por decir un ejemplo) de 0 a ~ 5 voltios. esos serian los que ingresarán al canal analógico que selecciones


La propiedad privada es la mayor garantía de libertad.
Friedrich August von Hayek

Desconectado Enigma

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 609
    • www.toroscoleados.com
Re: Ayuda... ADC con PIC16F877A
« Respuesta #2 en: 02 de Junio de 2007, 16:31:27 »
Hola Palitroquez gracias por la bienvenida.... bueno lo de la entrada del pic no hay problema, puede ser de 0 a 5V, yo podria ajustar esa entrada allí... el programa es en ASM....
La cuestión es que no se como introducir esa señal al pic, es decir, como le digo... "mira pic te estan entrando 2.5 voltios analogicos has que me aparezca eso visualizado en un display o lcd.... :)..." .....¿por donde meto esa entrada analogica...? imagino que ha de ser por un puerto... yo tendria la idea de como hacer el programa que me haga la equivalencia de lo que me entra en el pic a BCD y luego a AssII para que se vea en la LCD... pero como el pic va a reconocer ese valor de entrada analogico, es decir, como el pic va a saber que le estan entrando por ejemplo 1.5V para que según el programa me lleve eso a la LCD.... no se si me entienden....???

Apenas estoy conociendo a este PIC, puesto que estoy viendo esta materia por primera vez... anteriormente codifique y monte un cronometro que tenia que hacer un bromero, como contar ascendente, descendente, detenerse, hacer una pausa, cambiar el tiempo via teclado y todo lo demás... Pero con este convertidor me reventaron feo, porque no se como hacer que el pic lea entradas analogicas.... :(

Atte: Enigma... La llanerita de Guayana :P
No hay nada como cabalgar en la sabana y sentir la brisa con olor a mastranto, bosta y ganado. ¡¡O Fortuna, velut luna, status variabilis, semper crescis, aut decrescis, vita detestabili!! Que viva el coleo, la musica LLanera y la gótica!

Desconectado PalitroqueZ

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 5474
    • Electrónica Didacta
Re: Ayuda... ADC con PIC16F877A
« Respuesta #3 en: 02 de Junio de 2007, 16:57:35 »
Hola enigma.

lo primero que te recomiendo es leerte todo lo posible sobre el módulo convertidor analógico (CAD) que trae el pic, lo puedes leer en la datasheet o buscar aquí en el foro, te puedes ir a la sección "Todo en Microcontroladores PIC" ó "Almacén del Assembler"

lamento enviarte a esas secciones, pero pronto te daras cuenta, que es un poco extenso entender lo del CAD, y antes de explayarme en este tema, es bueno que tengas una noción.

a grandes rasgos te puedo dar una idea que puedes hacer:

- por un canal obtienes el dato analógico. (el PORTA y PORTE lo tienen)

- después de una conversión exitosa, el pic te guarda el resultado digital en un par de registros (ADRESH:ADRESL)

- ahora puedes enviar ese dato a la lcd, bajo ciertas condiciones:

   - si quieres enviarlo en formato digital, es decir, lo envias así como está.
   - si quieres que la lcd muestre el resultado en analógico, entonces tienes que hacer un cálculo para llevar ese número digital al formato decimal o punto flotante hablando estrictamente.

aquí viene un típico ejemplo:

para el cálculo, tienes que buscar la fórmula correspondiente que aparece en la datasheet (hoja técnica del micro)

si por ejemplo: al canal entran 4.99 volts entonces el CAD te lo lleva a 0x3FF, entonces ese 0x3FF si quieres mostrarlo como los humanos entendemos, o sea, que la lcd muestre 4.99 voltios, hay que usar otros metodos

1.- puedes usar unas rutinas de punto flotante que ofrece microchip.com (multiplicar y/o dividir directamente)
2.- puedes usar trucos para simplicar el cálculo, mediante tablas ó sumas sucesivas.


como veras, para alguien que empieza, cuesta al principio, por eso te digo que le des una mirada al módulo primero

y a medida que vayas avanzando y entendiendo los diversos procesos y registros entonces iras avanzando en lo que te propones.

otra recomendación: si en inglés se te hace difícil, aquí en el foro hay bastante personas que han explicado / resuelto en gran detalle el asunto relacionado al CAD y lo mejor de todo: EN ESPAÑOL
La propiedad privada es la mayor garantía de libertad.
Friedrich August von Hayek

Desconectado Enigma

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 609
    • www.toroscoleados.com
Re: Ayuda... ADC con PIC16F877A
« Respuesta #4 en: 02 de Junio de 2007, 19:32:30 »
Berro!!!! :? la cosa es más dificil de lo que pense!!!!  :( si bueno lei ahorita el datasheet del pic y bueno entendi hay más o menos también lei uno de los foros que hablaban acerca del adc pero lo que pude leer fue lo que explicaban por encima, es decir, dudas sencillas.... Dios!!!!!!!!!!! estoy frita!!!! :8}....
Una preguntica por lo que pude leer en el datasheet, toda la cosa se desarrolla en el registro adcon0 y en el adcon1, y según tiene una bandera (Adon) que manda un valor dependiendo de si esta haciendo la conversión o no,,, es así??? ese proceso es parecido a la interrupción....??

Atte: Enigma... La llanerita de Guayana :P
No hay nada como cabalgar en la sabana y sentir la brisa con olor a mastranto, bosta y ganado. ¡¡O Fortuna, velut luna, status variabilis, semper crescis, aut decrescis, vita detestabili!! Que viva el coleo, la musica LLanera y la gótica!

Desconectado Kedutpic

  • Colaborador
  • PIC16
  • *****
  • Mensajes: 219
    • Microelectronica
Re: Ayuda... ADC con PIC16F877A
« Respuesta #5 en: 03 de Junio de 2007, 00:42:11 »
Actel  -  VHDL un nuevo mundo por descubrir :D
Grupo de Microelectronica - CIDI - UTP
Visitanos en : http://ue.accesus.com

Desconectado micro_cadaver

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 2102
    • blog microembebidos
Re: Ayuda... ADC con PIC16F877A
« Respuesta #6 en: 03 de Junio de 2007, 01:42:46 »
ese pata kedutpic siempre pasando la plancha!!!!!!!!!!!!!!!!!!!

he señorita lo recomiendo que vaya paso por paso antes de mandarse de frente contra el ADC, el amigo kedutpic tiene buena plancha al respecto, lea y postee sus dudas.
a cosechar!!!... :P
pic32... ahi voy....
aguante el micro 16f84  !!!!

visita mi pagina: http://www.microembebidos.wordpress.com

Desconectado Jorge_Loa

  • PIC10
  • *
  • Mensajes: 24
Re: Ayuda... ADC con PIC16F877A
« Respuesta #7 en: 03 de Junio de 2007, 17:24:01 »
Mira el siguienmte ejemplo, de seguro te será util; el resultado de la conversion va al puerto D, asi es que tratalo para que vaya a una LCD.
Un solo privilegio: La inteligencia
Una sola aristocracia: La del Espíritu

Desconectado Enigma

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 609
    • www.toroscoleados.com
Re: Ayuda... ADC con PIC16F877A
« Respuesta #8 en: 03 de Junio de 2007, 20:02:36 »
Hola Muchachos... gracias por sus atenciones y su respuesta... el programa que me ha facilitado el joven Jorge_Loa, me ha servido de muuucho, porque precisamente inicializar las subrutinas y las variables de ADC me hacia ruido!!!! Y ese archivo que me paso Kedutpic está MÄSSS FIIIINO!!! Por fin algo en español de ese PIC!!!!!!

Y bueno con respecto a que vaya paso a paso, pues realmente se me hace imposible, porque necesito hacer ese acondicionamiento de esa señal de voltaje y mostrarla digitalmente... :( es triste!!!!

Cualquier dudita se que puedo contar con ustedes... y creanme que dudas no me faltaran...

Si alguien desea agregar otra información es aceptada y creanme que me servira de mucho... mientras más información mejor....

Atte: Enigma... La llanerita de Guayana :P
No hay nada como cabalgar en la sabana y sentir la brisa con olor a mastranto, bosta y ganado. ¡¡O Fortuna, velut luna, status variabilis, semper crescis, aut decrescis, vita detestabili!! Que viva el coleo, la musica LLanera y la gótica!

Desconectado PalitroqueZ

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 5474
    • Electrónica Didacta
Re: Ayuda... ADC con PIC16F877A
« Respuesta #9 en: 04 de Junio de 2007, 12:45:03 »
Berro!!!! :? la cosa es más dificil de lo que pense!!!!  :( si bueno lei ahorita el datasheet del pic y bueno entendi hay más o menos también lei uno de los foros que hablaban acerca del adc pero lo que pude leer fue lo que explicaban por encima, es decir, dudas sencillas.... Dios!!!!!!!!!!! estoy frita!!!! :8}....
Una preguntica por lo que pude leer en el datasheet, toda la cosa se desarrolla en el registro adcon0 y en el adcon1, y según tiene una bandera (Adon) que manda un valor dependiendo de si esta haciendo la conversión o no,,, es así??? ese proceso es parecido a la interrupción....??

Atte: Enigma... La llanerita de Guayana :P


cuando las cosas se ponen difícil, hay que mirarlas con otro punto de vista, de manera que por muy obvio que parezca, hay que resolverla por el lado mas fácil.

por ejemplo: hablando en el caso de los pic,s ¿que son ellos desde el punto de vista de programación? pués puros registros que hay que 'setear' o 'limpiar' en su debido momento para que él haga el resto. ¡Asi de sencillo!

poner a uno tal bit en x tiempo, poner a cero tal registro en x+n tiempo

en el caso del CAD, lo puedes usar con/sin interrupción, como ocurre con otros modulos.

Enigma: después nos contaras como te ha ido.

PD: Guayana , me suena jeje Saludos compatriota.

La propiedad privada es la mayor garantía de libertad.
Friedrich August von Hayek

Desconectado PalitroqueZ

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 5474
    • Electrónica Didacta
Re: Ayuda... ADC con PIC16F877A
« Respuesta #10 en: 04 de Junio de 2007, 12:46:42 »
ese manual que colgaste Kedutpic, está muy bueno.

Ojalá lo hubiera tenido cuando hice mi primer intento con ese módulo y no hubiera fallado  :?
La propiedad privada es la mayor garantía de libertad.
Friedrich August von Hayek

Desconectado maxluis

  • Colaborador
  • PIC16
  • *****
  • Mensajes: 129
Re: Ayuda... ADC con PIC16F877A
« Respuesta #11 en: 05 de Junio de 2007, 11:30:05 »
Enigma: Yo estaba tratando de armar algo para medir la presion de agua en el estanque que tengo en mi casa, pero soné en la primera parte como amplificar los mvs, tengo de 3mv a 100mv. no quiero usar amplificadores operacionales de doble fuente de tencion, quiero usar los single supply, y ojala los mismos 5 volts con que alimento el pic, por caprichoso estoy trabado con el invento.( que alguien me de una pista)
Enigma en este foro hay conocimientos suficientes para que puedas entender el ADC del pic, siguele buscando he iras encontrando.....
pd:
Cuanto tiempo hace que no escribia en el foro.
Saludos.
Maxluis.

Desconectado Enigma

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 609
    • www.toroscoleados.com
Re: Ayuda... ADC con PIC16F877A
« Respuesta #12 en: 15 de Junio de 2007, 23:04:46 »
Hola muchachos, les cuento... el adc no era tan dificil así como creia, me fue bien gracias a Dios y a la gente que colaboro conmigo brindandome material valioso que de pana me sirvio bastantisimo... a todos muchas gracias.... jejeje que bueno es este foro para los nuevos en cuanto al PIC se refiere como yo!!!!!!.... Saludos...


Atte: Enigma... La llanerita de Guayana  :P
No hay nada como cabalgar en la sabana y sentir la brisa con olor a mastranto, bosta y ganado. ¡¡O Fortuna, velut luna, status variabilis, semper crescis, aut decrescis, vita detestabili!! Que viva el coleo, la musica LLanera y la gótica!

Desconectado Kedutpic

  • Colaborador
  • PIC16
  • *****
  • Mensajes: 219
    • Microelectronica
Re: Ayuda... ADC con PIC16F877A
« Respuesta #13 en: 17 de Junio de 2007, 22:42:18 »
 :mrgreen: Que bueno que te aya salido  :mrgreen:  :-/ .
Actel  -  VHDL un nuevo mundo por descubrir :D
Grupo de Microelectronica - CIDI - UTP
Visitanos en : http://ue.accesus.com