TODOPIC

Microcontroladores PIC => Primeros pasos - Iniciación a los microcontroladores => Mensaje iniciado por: yiokum en 06 de Noviembre de 2006, 05:28:44

Título: Ayuda con el convertidor A/D
Publicado por: yiokum en 06 de Noviembre de 2006, 05:28:44
    Hola, muy buenas.

     Es la primera vez que escribo en este foro aunque ya llevo unos días dando vueltas por él en busca de información. Estoy haciendo un proyecto con PIC y es la primera vez que uso uno. Hasta el momento no lo llevo mal pero me gustaría, si alguien pudiera, que me explicara como puedo pasar el resultado del convertidor interno de 10 bits a 8 bits para utlizar un solo puerto de salida. He leído algo por el foro acerca de este tema pero no me ha quedado muy claro. Espero que alguien me pueda ayudar.

    Muchas gracias. :-/
Título: Re: Ayuda con el convertidor A/D
Publicado por: Modulay en 06 de Noviembre de 2006, 07:37:19
Tienes que configurar el conversor para que aloje el resultado de la conversión justificando los bits a la izquierda.Esto se hace poniendo a cero el bit ADFM (bit 7 del registro ADCON1)

(http://ciberia.ya.com/Modulay/img/adc.jpg)

De esta manera sólo tienes que leer el registro ADRESH para obtener tu dato de la conversión a 8 bits,despreciando los 2 bits que quedaron en el registro ADRESL
Título: Re: Ayuda con el convertidor A/D
Publicado por: yiokum en 06 de Noviembre de 2006, 07:55:24
    Muchas gracias por la respuesta.

    Yo he leido por internet algo de multiplicar 16x16 y luego dividir por no se que y pasar a BCD. La verdad es que no se ni si esto se hace realmente o donde lo lei se referían a otra cosa. También tengo un libro en el que hace algo de esto, multiplica y luego pasa a BCD, pero no lo entiedo muy bien. El libro trabaja con un PIC16F873. Podría alguien aclararme algo de esto si es posible.
Título: Re: Ayuda con el convertidor A/D
Publicado por: Modulay en 06 de Noviembre de 2006, 08:06:29
Pero todo eso ¿con qué fin?
Para poder sacar el resultado de la conversión por un puerto de 8 bits basta con que hagas lo que te dije.Configuras la justificación a la izquierda y vuelcas el contenido de ADRESH sobre el puerto,no hay más.
Título: Re: Ayuda con el convertidor A/D
Publicado por: yiokum en 06 de Noviembre de 2006, 08:11:36
    Si ya he entendido lo que me has dicho. Pierdo precisión en la conversión pero obtengo los 8 bits. El problema es que estaba un poco mosca con el asunto ese de multiplicar y pasar a BCD, pero da igual. Muchas gracias por reponderme
Título: Re: Ayuda con el convertidor A/D
Publicado por: manuelroin24 en 06 de Noviembre de 2006, 09:36:06
Bueno me parece que lo que tu quieres es mostrar el resultado dspues de la conversion A/D ya al convertirlo a BCD lo podrias enviar directamente a un LCD o un display de 7 segmentos.
Título: Re: Ayuda con el convertidor A/D
Publicado por: micro_cadaver en 06 de Noviembre de 2006, 11:44:11
hola manuel , hola a todos, pero cuando dicen BCD  entiendo q es de 0 a 9 nomas, o de rpetne no jijiij, pero ya si fuera el caso no podrian mostrar los demas valores A..F, q puede presentar el registro, m... yo lo haria asi:
1º obtengo la conversion en 10 bits (eso lo configuras leyendo el datasheet del conversor del pic)
2º digamos q te sale el valor 3A8 q corresponderia a (si configuras las referencias a Vcc y Gnd) 4.57 voltios, este valor lo tienes en dos registros, el adressh y el adressl.
3ºahora sacaremos por el puerto B, cada nyble, (asi se escribe?) es decir priemro sacas el 8 luego el A y finalmente el 3, y os muestras en 3 displays, mostrandolos uno por uno pero en secuencia rapidas de tal manera q el ojo humano pueda ver los 3 valores a la vez  :mrgreen:

asi hice una vez , cuando leia un voltaje pero tenia q mostrar en displays su equivalente en tiempo segundos, asi lo hice y sali del ejercicio. exitos  :-/ espero te ayude mi aporte.
Título: Re: Ayuda con el convertidor A/D
Publicado por: yiokum en 06 de Noviembre de 2006, 11:52:56
    Muchas gracias a todos. Habeis conseguido aclararme. Voy a probar lo de los displays, no se me habia ocurrido.