Con respecto a los valores de las resistencias, yo usaría valores R, 2R, 4R, 8R,
16R, etc., para poder detectar cuándo se presionan varios pulsadores, y cuáles
son.
Saludos
Jose
----- Mensaje original ----
De: Boris Estudiez <boris_tormentor@...>
Para: electronica_desaplicada@...
Enviado: miércoles 31 de enero de 2007, 12:45:01
Asunto: Re: [E_Desaplicada] COMO USAR UN PIN DEL PIC CON VARIOS PULSADORES
31/Jan/2007 - 12:28 PM
Alberto,
Otra idea, si son muchos los pulsadores y no se tiene
un ADC o puede haber problemas de ruido, es la de utilizar
un 555 (timer) funcionando como oscilador (astable
multivibrator).
Como la frecuencia del 555 depende de la constante R*C,
cada pulsador deberia conectar una resistencia distinta al
pulsarlo, de tal forma que se generare una frecuencia
unica de salida para cada pulsador. La frecuencia de salida
debe ser conectada a un pin con interrupcion por
flanco (edge).
Como sabes cual pulsador fue presionado ?.
Cuando la primera interrupion ocurra (flanco ascendente),
activas un timer del PIC como contador. Cuando ocurra la
segunda interrupcion (flanco descendente), desactivas el
timer. En este punto sabes el ancho de pulso de la señal
de salida del 555 y por lo tanto sabes a que pulsador
corresponde.
Para no obtener interminables interrupciones, deberias
inhibir las interrupciones externas por algun tiempo (por
ej. 140 mS) en el momento que un pulsador es identificado.
Una ventaja de este metodo es que podes saber si
varios pulsadores son presionados al mismo tiempo,
ya que la frecuencia de salida no correspondera
a ninguna valida.
Tambien se puede aplicar a teclados matriciales lo
descripto.
Saludos, Boris.-
On 27/01/2007 at 08:23:06 -0600 alberto grosso Wrote:
> Ok. Daniel:
>
> lo voy a probar.
>
> Gracias
>
>
> Javier Fileiv <ja_fileiv2@...> escribió:
> perdon ke me meta........ me parecieron muy ingeniosas las idea,
aunke no sea yo quien lo vaya a usar considero ke son muy buenas. Si en algun
futuro necesito usar varios pulsadores ya te la solucion. Muchas Gracias
> C. Javier Fileiv
> ----- Original Message -----
> From: Daniel Ricardo Perez
> To: electronica_desaplicada@...
> Sent: Friday, January 26, 2007 11:22 PM
> Subject: Re: [E_Desaplicada] COMO USAR UN PIN DEL PIC CON VARIOS PULSADORES
>
>
> Si no es necesario poder detectar la pulsación simultánea de más de uno,
los siguiente son dos trucos como los utilizados en los car stereos para leer
los botones en los frentes desmontables pasivos:
> 1) Si el PIC tiene un A/D, se conecta el pin analógico con un resistor a
Vdd, y un resistor de distinto valor a cada pulsador cuyo otro borne va a masa.
Según cuál se pulse, será distinta la tensión que se digitalice. Se eligen los
resistores como para que los distintos escalones de tensión sean más o menos
equidistantes. Si se abusa de la cantidad de pulsadores, los escalones se hacen
muy pequeños y aumenta la probabilidad de error, y se necesitan resistores de
menor tolerancia.
> 2) Para los que no tengan A/D:
> - Se conecta un capacitor al pin.
> - Ese pin va conectado a cada pulsador en serie con distintos resistores.
> - Se programa al PIC para que momentáneamente ese pin sea una salida en
alto, cargando al capacitor.
> - Luego pasa a ser entrada y se mide el tiempo que tarda en cambiar de
estado, que dependerá del resistor que se pulse.
> - Se repite periódicamente la recarga del capacitor.
> - Hay que ignorar la primera o primeras detecciones de botón pulsado porque
el capacitor no necesariamente comenzó a descargarse justo en el comienzo de un
ciclo, además de la necesidad de elimianr rebotes.
> Creo que debe haber ideas similares en el sitio de Microchip o cualquier
otro fabricante de micros.
> Éxitos!
> Daniel Pérez
>
> alberto grosso <albertodg2@...> escribió:
> Hola:
> alguno sabe como es el circuito para detectar varios pulsadores con un pin del
PIC.
> Gracias
>
>
> ---------------------------------
> Preguntá. Respondé. Descubrí.
> Todo lo que querías saber, y lo que ni imaginabas,
> está en Yahoo! Respuestas (Beta).
> Probalo ya!
>
>
>
>
>
> __________________________________________________
> Correo Yahoo!
> Espacio para todos tus mensajes, antivirus y antispam ¡gratis!
> Regístrate ya - http://correo.espanol.yahoo.com/
--
Contacteme en:
* Mail(1): stk <at> freeshell.org
* Mail(2): 43824 <at> electronica.frc.utn.edu.ar
* Mail(3): slicetex <at> hotpop.com
* Website: http://stk.freeshell.org
EOF
*************************************************************
Direcciones Útiles:
Envió de mensajes: electronica_desaplicada@...
Subscribirse: electronica_desaplicada-subscribe@...
Desuscribirse: electronica_desaplicada-unsubscribe@...
Mensaje al Owner: electronica_desaplicada-owner@...
Para recibir ayuda: electronica_desaplicada-ayuda@...
Resumen diario: electronica_desaplicada-digest@...
Cancelar resumen diario: electronica_desaplicada-normal@...
Solo acceso Web: electronica_desaplicada-nomail@...
Pagina en Yahoo!: http://ar.groups.yahoo.com/group/electronica_desaplicada
*************************************************************
Enlaces a Yahoo! Grupos
__________________________________________________
Preguntá. Respondé. Descubrí.
Todo lo que querías saber, y lo que ni imaginabas,
está en Yahoo! Respuestas (Beta).
¡Probalo ya!
http://www.yahoo.com.ar/respuestas