# Leer valor de una resistencia ajustable



## jojo_pic (Ene 24, 2007)

Hola buenas! 

Me gustaría preguntaros una duda que tengo. Para un proyecto que tengo que hacer necesito leer un valor de una resistencia ajustable que va de 1 a 5 Hz. El led tiene que parpadear a una velocidad que depende de este valor.

¿Cómo puedo realizar esto? ¿Alguna idea?

Muchas gracias.


----------



## mabauti (Ene 24, 2007)

la forma mas sencilla seria ponerle interruptores en la resistencia y medir con el ohmetro 




debes oprimir los pushbuttons al mismo tiempo (quitando primero una punta del ohmetro) para que el circuito funcione


----------



## jojo_pic (Ene 25, 2007)

Hola de nuevo.

En primer lugar, muchas gracias por tu respuesta...

Creo que no es esa la solución que tengo que tomar. El hardware, segun se me ha dicho en clase, no tengo que tocarlo. Sería leer el valor de la resistencia ajustable mediante código (ensamblador). Esto debe condicionar la velocidad con la parpadea el led.

La verdad es que no se muy bien por donde tirar, estoy un poco perdido.

Muchas gracias de nuevo


----------



## jojo_pic (Ene 25, 2007)

Esta es la resistencia ajustable que estoy utilizando.


----------



## Perromuerto (Ene 25, 2007)

Hay que hacer dos cosas:
1) Medir la resistencia.
2) Usar el valor medido como parámetro de una rutina que encienda 
y apague el LED.

El modo de realizar la primera parte depende de los periféricos que tenga el microcontrolador (uC). Si el uC tiene un convertidor ADC disponible, se puede usar para medir el voltaje en la pata del contacto movil, poniendo un voltaje fijo (el de la fuente) entre los otros dos contactos. Si el uC no tiene convertidor ADC, puedes usar la resistencia variable junto a un condensador para medir el tiempo de carga y/o descarga de este último.
Para hacer parpadear al LED, el método mas sencillo es el de usar una interrupción periódica. El período variable se puede lograr variando el valor de recarga de un contador usado para generar la interrupción. Las variaciones alrededor del tema son muchas.
En todo caso, parece un proyecto típico de un 555. Si usas la versión CMOS, puedes usar resistencias muy altas y lograr dichos períodos.


----------



## jojo_pic (Ene 25, 2007)

Muchas gracias por responder!

El micro que utilizo es el PIC 16F877A.

Creo que tengo que utilizar el convertidor ADC, no?

saludos!


----------



## yamazaky1984 (Ene 26, 2007)

Creo que ya varais veces han intentado hacer lo mismo... Yo sugiero los siguiente:
Creas una fuante de corriente continua y la aplicas al potenciometro.. Después lees con el adc el valor de tension que provoca la resistencia y dentro de micro puedes usar el valor obtenido de voltaje mas el que sabes que es el valor de corriente y aplicas ley de ohm.. des pues conociendo el valor miras que haces para el led por ejemplo, colocas una escala de valores posibles de resistencia relacionadas con un tiempo de encendido..
A simple vista (demasiado rapida) ses lo que creo que hay que hacer


----------



## kagiva (Abr 6, 2007)

Que hay amigos. 
 En principio, espero que ya tengas la respuesta o solución a tu consulta.

 En caso de no ser así, este es un intento por dar una solución a tu petición.

 Para medir el valor de una resistencia con un PIC, deberías pensar en conectar una resistencia y un condensador en serie  circuito se llama retardo de tiempo. Puesto que el condensador al principio está descargado y la resistencia carga el condensador a un valor especifico. El tiempo empleado para alcanzar este valor, lo llamamos tiempo de carga.  

 El punto medio de los dos componentes lo llamaremos "punto de señal o detección." El condensador está sobre la resistencia y si la línea superior se toma como ALTA, el voltaje en el punto de detección caerá a un valor especifico, después de un tiempo de carga. 

  Si el valor de la resistencia se modifica, el tiempo empleado para que el voltaje en el punto de detección alcance un valor especifico cambiará.

  El condensador sera cargado mientras han sido ejecutados 255 lazos (cuando el potenciómetro está en máxima resistencia), entonces el valor máximo mostrado es "DF" (223).

  Supongo que está claro el tema. Dime si te sigue interesando la solución.

  Saludos de kagiva


----------



## edugonza (Abr 6, 2007)

hola:
         Estuve estudiando tu caso, el modo mas confiable para mi, si estas trabajando con pic , es utilizar el modulo adc, te recomendaria utilizar una resistencia variable con una presicion no mayor al 1%, porque de lo contrario seria muy inestable el funcionamiento del programa en el pic.
Por otro lado, la resistencia y el capacitor, tendrian que estar conectados a una fuente regulada muy precisa, ya que cualquier variacion pequeña de tensión que se produciera en la fuente, y a medida que varie la resistencia, produciria una diferencia en el tiempo de carga del capacitor.
Como metodo , yo siempre utilizo todas las herramientas de sofware si estoy trabajando con pic, y trato de minimizar los elementos de harware para evitar posibles fallas en la puesta en marcha del circuito.
Espero haberte ayudado, saludos


----------



## alfred-09 (May 20, 2008)

Hola que tal,

   Me toca elaborar un circuito para leer el valor de una resistencia variable tambien, y como voy a utilizar el mismo PIC 16F877A, me podrias ayudar?

  Tienes un diagrama de flujo o codigo que me pueda orientar?

  GrAcIaS.
Atte, 
alfred-09


----------



## MaMu (May 21, 2008)

Si con este enlace no lo resulven...
http://www.sxlist.com/TECHREF/microchip/16f877adsamp.htm
Que mi Microchip se apiade de nuestra alma


----------



## makine (May 21, 2008)

Esta muy bien


----------



## alfred-09 (May 21, 2008)

Estoy revisando el link y me ha dado gran avanze para mis dudas, me ha servido demasiado y gracias por la ayuda, voy a implementar la simulacion y estamos en contacto.


----------

