Problema con teclado y circuito impreso

Realice una placa donde tengo conectado un LCD hitachi 16x2 y un teclado matricial 4x3 a un pic 16f886. La placa la he revisado mil veces y no parece tener ningun corto y ningun circuito abierto, sin embargo algo le pasa a mi circuito porque no funciona bien el teclado. Con el LCD no tengo ningun problema, todo lo que mando desplegar se despliega sin error pero con el teclado no pasa lo mismo, si presiono alguna tecla en el LCD se muestra otra distinta. Si presiono "1" aparece un "4", vuelvo a presionar el "1" y vuelve a aparecer el "4" pero si repito muchas veces lo mismo de repente al presionar "1" aparece "1".

Todo esta bien conectado, ahora para probar puse en un protoboard el pic y el LCD y conecte el teclado de la placa al protoboard (a traves de la base para el pic) y ahi no me da ningun problema de modo que el teclado si esta bien conectado al pic en la placa pero el pic por algun motivo no quiere reconocer el teclado. El pic no esta defectuoso ya que es el mismo que probe en el protoboard y ahi funciono sin problemas.

No se donde pueda estar el error, ya descarte todo tipo de error de conexion, el LCD funciona y el teclado de la placa conectado al protoboard funciona tambien y como dije la conexion al teclado la tome de la base que puse ahi para el pic por lo que tambien el pic deberia leer bien el teclado pero no es asi. No hay error visible y sin embargo el proyecto no funciona.

Alguien que me eche una mano? Alguien que tenga ideas sobre cual podria ser el problema? Cualquier ayuda en estos momentos serian enormemente agradecidos. No adjunto el codigo del pic porque no creo que tenga mucho caso, el problema no esta en el programa ya que en proto (y en proto con una parte de la placa) funciona muy bien.

Bueno, espero que alguien me pueda ayudar. Muchas gracias.
 
Me la juego que tiene que ver algo con la programación y con retardos.

PD: Por fin VEO a alguien que utiliza el 16F886 y no el 16F876A de siempre. Lo mismo quiero ver en el futuro con el 16F84A al 16F88.
 
hola
pic-man dijo:
La placa la he revisado mil veces y no parece tener ningun corto y ningun circuito abierto, sin embargo algo le pasa a mi circuito porque no funciona bien el teclado.

Todo esta bien conectado, ahora para probar puse en un protoboard el pic y el LCD y conecte el teclado de la placa al protoboard (a traves de la base para el pic) y ahi no me da ningun problema de modo que el teclado si esta bien conectado al pic en la placa pero el pic por algun motivo no quiere reconocer el teclado..

Blanco y en botella. ¿que es?

Revisa la placa 1001 vez.

saludos
 
Meta dijo:
PD: Por fin VEO a alguien que utiliza el 16F886 y no el 16F876A de siempre. Lo mismo quiero ver en el futuro con el 16F84A al 16F88.
quizas sea pura cuestion economica. estos precios son de micropik
 

Adjuntos

  • precios_951.jpg
    precios_951.jpg
    57.6 KB · Visitas: 897
Meta el problema no es la programacion, esas son rutinas que he probado mil veces y funcionan, voy a hacer como dice pepechip, revisar la placa otra vez y otra... y otra...
 
estaña las pistas por si acaso alguna diera fallos intermitentes.
revisa el zocalo del pic
Todos los componentes estan bien?

No te obsesiones. Descansa. Otro dia talvez lo veas mas claro.
Hay veces que lo tenemos delante de nuestras narices y no lo vemos.
 
Lo mismo me dice mi novia y lo dice con mucha razon, siempre me dice que descanse y muchas veces funciona.

Ahorita acabo de revisar de nuevo las conexiones, voy a descansar y despues a estañar al menos las pistas que se vean sospechosas. Espero solucionar ese problema, ya sabran todos por aqui 8)

Me falto decir que tanto el zocalo del pic como los push buttons del teclado y el pic son nuevos, el unico que ya tiene sus ayeres es el LCD, asi que si, todos los componentes son nuevos.
 
Te está fastidiando la calidad del teclado. Tiene muchos saltos (Bounce). En el protoboard funciona debido a las capacidades dispersas.

Agrégale capacitores de 0.1 µF, en paralelo con cada pulsador.

mcrven
 
mcrven dijo:
Te está fastidiando la calidad del teclado. Tiene muchos saltos (Bounce). En el protoboard funciona debido a las capacidades dispersas.

Agrégale capacitores de 0.1 µF, en paralelo con cada pulsador.

mcrven

En el saso de que se trate de los rebotes de los pulsadores, mejor lo solucionas sobre el firmware, metiendole retardos, tal y como comento Meta.
 
pepechip tiene razon, es mejor solucionar ese problema mediante software, pero tengo una duda: en caso de que el problema fueran los rebotes el error que apareciera deberia ser que la misma tecla la detecte muchas veces, es decir si presiono un "1" que el "1" apareciera repetido pero no es asi, presiono el "1" y aparece un "4" y algunas teclas ni siquiera regresan un valor numerico (7, 8 y 9 siempre se leen como &, ( y ( ), ese cambio de numero puede ser por rebotes?

de cualquier forma le metere un retardo a ver si se soluciona
 
cuando detectas una pulsación, temorizas 20mS y vuelves a comprobar si se ha pulsado verdaderamente. Pasado este tiempo hasta un par de cables deja de tener rebotes.
Si pasado el tiempo no está al nivel deseado puede haber sido un ruido.
Al ir leyendo tienes que ir sacado un valor secuencial. Este dato que sacas es rápido. Si pulsas una tecla te puede estar detectando otra dependiendo donde se encentre.
 
La rutina del teclado que estoy usando es esta de teclado matricial 4x3, es una rutina que hice hace algun tiempo y que he venido empleando siempre sin ningun problema, como "antirrebotes" solo tenia una condicion que era que si no se dejaba de pulsar la tecla no se mostrara ningun numero y siempre funciono bien en protoboard. Ahora le agregue un retardo de 32ms para que fuera mas seguro pero el problema aun no se arregla en el circuito impreso, he estañado las pistas que se veian sospechosas (que pudieran no tener continuidad), he probado con tester todas las pistas para ver que no haya cortos y aun no soluciono el problema

Puedo estar seguro que mi placa no tiene ningun corto y que no se trata de un problema de rebotes. Alguna otra idea?

De nuevo muchas gracias a todos, aunque aun no soluciono el problema en verdad me estan ayudando bastante.
 
pic-man, yo cuando he evaluado ya la continuidad/aislamiento, re-re-re-re-recheco el diseño de la placa, o pudiera ser un componente dañado o mal colocado, gazapos como esos.
 
Yo ya estoy pensando en la posibilidad de volver a diseñar el circuito. Sobre lo que dices mabauti, no creo que sea un componente en mal estado, los unicos componentes de la placa son el pic, los push-buttons y el LCD y los push-buttons son nuevos.

La unica diferencia entre la placa y el circuito montado en un protoboard es que en el proto al pin 3 del LCD tengo conectado un potenciometro con los extremos conectados a Vcc y tierra para controlar el voltaje mientras que en la placa el pin 3 del LCD lo mande a tierra con una resistencia de 1K Ohm. No creo que el problema sea ese pero... podra afectar en algo esa diferencia?
 
Estoy a punto de abandonar la electronica! Recuerdan el problema de la placa y el teclado? Pues al final despues de revisar mis veces la placa la desheche e hice otra, rediseñe por completo el PCB (utilizo los mismos componentes pero en una posicion distinta), compre una base nueva para el PIC y push buttons nuevos y ahora la nueva placa tampoco funciona, he revisado todo el dia la placa, todo esta bien soldado, existe continuidad donde debe existir, todo esta bien, pongo el pic en el zocalo, conecto tambien el LCD, alimento el circuito y aparece el mensaje que debe aparecer en el LCD pero ahora la cosa esta peor: absolutamente nada de lo que escribo en el teclado se muestra en el LCD, nada!

En verdad no tengo idea de cual sea el problema porque haciendo la prueba con el teclado de la nueva placa conectado al proto funciona pero en la placa no, esto empieza a desesperarme.
 
Aisla las partes : lo que se me ocurre es que hagas una parte en una placa y la otra en ... otra >_>

La mas importante primero.

Lo estas haciendo en eagle? postea el circuito.
 
Si, lo hice en eagle, lamentablemente (y es muy lamentable en verdad) el diseño lo hice en la computadora del trabajo y no guarde una copia en mi memoria usb, por ahora no lo tengo a la mano y no lo tendre sino hasta dentro de 2 semanas, hoy sali de vacaciones y olvide copiar el diseño.

De todas formas puedo rediseñar el circuito de nuevo, el pic y el LCD lo dejo en una placa y el teclado lo hago en otra. Por probar no va a quedar!

Gracias mabauti.
 
Ya pude solucionar el problema, al final fue un corto que no habia logrado detectar en todas las revisiones que hice, gracias a todos los que me asesoraron con esto.

El problema lo solucione en la segunda placa, en la primera si no tengo idea de que pase, tal vez sea algo asi aunque no descarto posesion demoniaca lo mejor sera que me deshaga de esa placa para siempre :LOL:
 
Atrás
Arriba