TODOPIC

FORO TÉCNICO => Foro Técnico => Mensaje iniciado por: Marttyn en 06 de Marzo de 2009, 01:58:49

Título: De 16 botones a 4 bits
Publicado por: Marttyn en 06 de Marzo de 2009, 01:58:49
Hola a todos! Aqui estoy nuevamente, con una pregunta, por supuesto!  :D
Tengo un emisor de RF que tiene 4 entradas paralelas, que se codifican y se envian con un encoder. Me gustaria ponerle 16 botones.
Hay algun integrado que tenga 16 entradas y 4 salidas? asi podria pasarselo directamente al emisor RF. O sino, habria alguna otra manera de implementarlo evitando un pic?
Espero que me hayan entendido :mrgreen:
Gracias y salu2!
Título: Re: De 16 botones a 4 bits
Publicado por: AKENAFAB en 06 de Marzo de 2009, 02:21:41
Usa un codificador

no se me ocurre alguno por ahora .

Saludos!
Título: Re: De 16 botones a 4 bits
Publicado por: doppel en 06 de Marzo de 2009, 10:52:20
Hola Marttyn

Holtek tiene varios circuitos para lo que quieres, se me ocurre el HT12E pero creo que no llega a tanto como 16 pero si te fijas en la página de holtek seguro encuentras alguno que se adapte bien.-

Título: Re: De 16 botones a 4 bits
Publicado por: Javicho en 06 de Marzo de 2009, 11:15:43
Esa pregunta es de Sistemas digitales I, busca en un libro del mismo titulo seguro ahi encuentras hasta ejemplos.

Javicho.
Título: Re: De 16 botones a 4 bits
Publicado por: Marttyn en 06 de Marzo de 2009, 17:23:23
No puedo usar un encoder como los de holtek, mi emisor RF ya tiene su propio encoder, y es a ese al que hay que meterle cuatro lineas de datos. Si fueran 4 pulsadores seria directo, pero al ser 16 hay que meterle algo antes.

Creo que tengo un libro de digital I, le voy a pegar una hojeada a ver que saco  :-/
Título: Re: De 16 botones a 4 bits
Publicado por: RICHI777 en 06 de Marzo de 2009, 17:51:03
Hola, creo que no existen circuitos comerciales que hagan eso, pero una solucion de compromiso seria conseguir una EPROM de 64 K ( creo que son las 27C64 ) y las llenas con los valores que deseas, entonces los pulsadores los colocas en las lineas de Address ( A0-A15 ) y las salidas ( podrian ser D0-D3 ) al encoder. Espero que me hayas entendido, cualquier cosa pregunta. La idea la habia tirado creo que el BrunoF o el Guitre. ( Creditos a ellos )

Saludos !
Título: Re: De 16 botones a 4 bits
Publicado por: Marttyn en 07 de Marzo de 2009, 14:27:46
Richi, la verdad lo que propones es bastante ingenioso, me gusta la idea... pero si voy a recurrir a algo asi directamente uso un PIC y no hago tanto lio  :D
Título: Re: De 16 botones a 4 bits
Publicado por: RICHI777 en 07 de Marzo de 2009, 17:38:02
Hola, la idea me la pasaron, y si posiblemente sea mas economico hacerlo con un Pic, si solamente se usarian 10 entradas podes usar el 74HC147, de todos modos encontre esto, decide tu.

http://www.allaboutcircuits.com/worksheets/en_dec.html

http://www.geocities.com/abe_karnik/encoder16to4.htm

http://focus.ti.com/lit/ds/symlink/sn74ls348.pdf

http://www.datasheetcatalog.org/datasheet/motorola/SN74LS148D.pdf

Saludos !
Título: Re: De 16 botones a 4 bits
Publicado por: Marttyn en 07 de Marzo de 2009, 18:23:33
GENIALLL!!! esto creo que va a servir y es muy simple!!! es lo tipico de "por que no se me habra ocurrido antes?"

(http://sub.allaboutcircuits.com/images/quiz/01409x01.png)

Que alegria! no pense que fuera a encontrar (creditos para richi) un sistema TAN simple!!!  :-/
Ahora solo tengo que ponerme a soldar diodos a lo loco  :D  Hay arrays de diodos?
Título: Re: De 16 botones a 4 bits
Publicado por: Marttyn en 08 de Marzo de 2009, 15:29:56
Podre omitir los diodos de las lineas 1, 2, 4, 8? creo que no influiria...
Diodos 1n4148 seran apropiados o hay alguno que vaya a cumplir mejor la funcion?
Salu2
Título: Re: De 16 botones a 4 bits
Publicado por: Nocturno en 08 de Marzo de 2009, 16:12:18
¿Realmente es más simple eso que un PIC?  :?
Título: Re: De 16 botones a 4 bits
Publicado por: Marttyn en 08 de Marzo de 2009, 16:24:32
 :D :D :D
SIMPLE, lo que se sice SIMPLE no es... hacer la PCB me esta costando lo suyo, voy a necesitar una PCB de doble cara fijo. Pero tiene la ventaja de que de esta manera el circuito solo consume energia cuando se presiona un boton, mientras que si tengo un PIC este tiene que estar monitorizando todos los botones constantemente, y para un mando a distancia no me convence. Ademas, tendria que usar un pic de 28 pines, y me parece un derroche usar algo asi para una aplicacion que se soluciona solo con diodos  :mrgreen:
Y por encima, por ebay cosigo 50 diodos por 2€
Título: Re: De 16 botones a 4 bits
Publicado por: Cryn en 02 de Abril de 2009, 20:27:01
pero si con un teclado matricial 4x4 puedes usar la interrupción por el nibble alto del puerto B y no tienes  que monitorizar todos los botones constantemente, la interrupción te ayuda, ahí lo desarrollo pocher y lo mejoró palitroquez. busca y encontrarás marttyn

un saludo
Título: Re: De 16 botones a 4 bits
Publicado por: Marttyn en 03 de Abril de 2009, 15:38:11
Cryn, realmente el mayor problema de usar un pic es que este esta consumiendo corriente constantemente. Mi aplicacion es un mando a distancia, y usa una bateria de 12v de las de mando a distancia, que tienen poca carga. Tendria que poner un regulador que consume corriente constantemente y el propio pic tambien consume... dudo que la bateria pueda pasar un dia entero sin haberse descargado  :(
Si fuera por mi tambien usaria un pic, me simplifica MUCHO la placa y ahorro un monton de espacio...
Título: Re: De 16 botones a 4 bits
Publicado por: Cryn en 04 de Abril de 2009, 18:10:01
aahh asi si, pero y que tal los LF? o los nanowatt? quizá si puedan ayudarte en consumo y de paso los pones a dormir hasta que el teclado los despierte
Título: Re: De 16 botones a 4 bits
Publicado por: Marttyn en 08 de Abril de 2009, 00:26:05
Cryn, estuve pensando e investigando en lo que me dijiste de poner a dormir el pic para que no consuma...
Encontre un caso optimo y muy economico en recursos, que seria usar un 12HV615, que permite voltajes de hasta 15v de entrada, y tiene 6 pines disponibles. Podria usar 4 como salida, y usar una entrada analogica para los 16 pulsadores.
Otra opcion seria un 12F683, con un regulador de 5v LDO de estos que consumen MUY poquito.
El problema que veo es que no podria poner el PIC a dormir, porque despues no tengo manera de despertarlo, ya que el unico pin libre que me queda es el del reset, pero creo que no hay manera de conectarlo a los 16 pulsadores para que al presionar cualquiera de ellos el PIC se active.
No hay manera de despertar el PIC a traves del pin del ADC?
La verdad nunca use el sleep y estoy medio perdido... me voy a acostar con el datasheet del 12f683 para ver que aprende del SLEEP.

Igualmente tengo que mirar y remirar el consumo, ya que las baterias A23 son de 12v y tienen una capacidad de menos de 60mA, por lo que no da para mucho...
Título: Re: De 16 botones a 4 bits
Publicado por: gera en 08 de Abril de 2009, 00:51:00
Y si usas un codificador comun y corriente, y la alimentacion la pones en serie con los botones? de este modo solo va a consumir energia al ser presionado alguno de los botones
Título: Re: De 16 botones a 4 bits
Publicado por: Marttyn en 08 de Abril de 2009, 13:23:03
Gera, no estoy seguro de que manera podria tener 16 pulsadores y que todos estuvieran en serie con la alimentacion, sin influir un pulsador sobre el otro  :?:

Lo que si que vi es que un PIC12F683 consume unos 350nA en sleep, y un regulador como el MAX1726 tiene unos 2uA de Iq. Eso me daria una vida de casi tres años en reposo!

CREO QUE SE ME OCURRIO UNA GRAN IDEA!!!

*En el pin A2 tener los 16 pulsadores en modo analogico
*Pin A2 configurado como interrupcion externa
*PIC durmiendo

Hay algun inconveniente en todo esto. El primero que se me ocurre es que tengo que ver de diseñar los divisores de voltaje para los 16 pulsadores de manera que TODOS me den un voltaje de al menos 2v es el voltaje que considera el PIC como 1 logico, sino no conseguiria interrumpir para despertar el pic. Esto me deja con menos rango para los valores de los pulsadores, pero supongo que configurando el ADC como 10bits, y 16 valores en voltajes superiores a 2v no deberia ser ningun problema.
El otro problema es que no se si el pic sera tan rapido como para despertar, cambiar el modo del pin A2 y leer el voltaje antes de que se suelte el pulsador. Y menos si lo tengo corriendo a 31kHz internos, que asi consume menos.

Me parece que me estoy haciendo el McGuiver con tan pocos pines y tantas entradas y salidas...  :D
Alguien con algo de conocimiento y no tan aventurado podria decirme si estoy loco?  :P
Título: Re: De 16 botones a 4 bits
Publicado por: gera en 08 de Abril de 2009, 13:36:52
Gera, no estoy seguro de que manera podria tener 16 pulsadores y que todos estuvieran en serie con la alimentacion, sin influir un pulsador sobre el otro  :?:
No entiendo cual es el problema. Se supone q los 16 pulsadores los vas a presionar de a uno, nunca van a haber dos a la vez. Entonces cuando presiones uno, el integrado se va a alimentar y va a poner en su salida el codigo correspondiente a ese pulsador, y cuando lo sueltes se apaga y listo. Osea, los pulsadores van a estar cada uno en serie con la alimentacion, pero en paralelo entre si, de modo q cualquiera q presiones alimente el integrado.
Título: Re: De 16 botones a 4 bits
Publicado por: Marttyn en 08 de Abril de 2009, 14:33:01
Si, ya entiendo, jeje.... era simple, pero no lo veia  :mrgreen:
Lo que comentan al principio de este post es que nadie conoce codificacores de 16 entradas y 4 salidas, tu conoces alguno?
Título: Re: De 16 botones a 4 bits
Publicado por: gera en 08 de Abril de 2009, 14:37:46
Si, ya entiendo, jeje.... era simple, pero no lo veia  :mrgreen:
Lo que comentan al principio de este post es que nadie conoce codificacores de 16 entradas y 4 salidas, tu conoces alguno?

creo q alguna vez vi uno por ahi, dejame buscar un poco y te cuento

EDIT:
bien, por lo q estuve leyendo parece q no viene un integrado asi... pero este compadre se las ingenio para lograr el mismo efecto con dos codificadores de 10-4
http://www.geocities.com/abe_karnik/encoder16to4.htm
espero q sirva. suerte!!
Título: Re: De 16 botones a 4 bits
Publicado por: WillyP en 08 de Abril de 2009, 15:22:04
Marttyn, los codificadores de prioridad hacen ese trabajo. Por ejemplo el CD40107 es de 10 líneas a 4 líneas. Seguramente también debe haber uno de 16 a 4 líneas.
Título: Re: De 16 botones a 4 bits
Publicado por: Marttyn en 08 de Abril de 2009, 20:02:59
gracias gera por el enlace!
Pero la verdad que usar 3 integrados (2 codificadores y unas puertas negadas) me parece incluso mas complejo que el arreglo de diodos que encontre unos post mas atras...
Voy a ver si hago alguna prueba con la idea que tuve. Tal vez funcione, y solo uso un pic de 8 pines!  :mrgreen:
Título: Re: De 16 botones a 4 bits
Publicado por: gera en 09 de Abril de 2009, 15:19:01
Si, la verdad q en lugar de simplificar el problema lo complica por la cantidad de integrados. Si viniera un codificador de esas caracteristicas en un solo chip seria mas facil jeje.
Mucha suerte con tu problema y esperemos q tu solucion funcione ;)
Título: Re: De 16 botones a 4 bits
Publicado por: Cryn en 09 de Abril de 2009, 15:36:48
y si en vez de aumentar integrados usas un micro con más pines, uno de 18, que tiene todo el puerto B completo y el A de 4 o 5 pines util para algunas otras cosas...

y así usar un teclado matricial directamente gestionado por la interrupción del nible alto del puerto B, ya que no hace falta hacer rotar un 0 o 1 por el otro nible del teclado, simplemente cuando se detecta el cambio de estado se hacen desplazamientos para detectar la tecla presionada, como te dije Pocher lo hizo y Palitroquez lo mejoró, puedes usar de guía esos codigos.

y entonces tienes al micro durmiendo hasta que se presione la tecla, unmicro nanowat, que va consumir mucho menos, como el 18F1320 de 18pines, quizá veas otro mejor...

un saludo.
Título: Re: De 16 botones a 4 bits
Publicado por: Marttyn en 09 de Abril de 2009, 16:38:25
Hay pics de 18 pines que tienen 8 pines disponibles tanto en el puerto A como el B, es el caso de los que tienen oscilador interno, como el 16f648A o el 16F88, este ultimo es nanoWatt, y sin tener que ir a la familia 18F, que creo innecesario en este caso.
Estuve mirando los temas de Pali y Pocher, y son una opcion si considero usar un PIC de 18 pines. Pero creo que primero probare mi idea de usar un PIC de 8 pines, nanoWatt y con ADC interno como comente unos post mas atras, creo que puede ser factible. Y si no funciona, aprendere algo, e intentare con uno de 18 pines  :mrgreen:
Título: Re: De 16 botones a 4 bits
Publicado por: Cryn en 09 de Abril de 2009, 20:22:27
ok, manos a la obra entonces :mrgreen:

esperamos tus resultados, no se te olvide luchar contra el ruido por soft y por hard con el teclado analógico

un saludo