desktop

Problema con placa, pics y lcd

Bueno, el tema es que solo llevo unos meses en serio con esto de los pics y me estan dando serios dolores de cabeza....

He estado programando y probando varias cositas (lcds, leds, relays...) con el combo Mikrobasic-Proteus-protoboard con bastante exito y satisfaccion. Pero cuando he pasado a montarlo sobre una placa fabricada por mi... AAAAAAAArrghhh, nada funciona como deberia!

El caso:
He montado pic que muestra en un lcd un menu y con un par de botones, se pueden elegir las opciones de encendido de otros pics y les envia a traves de uart los parametros y a traves de transistores los enciende y tal... Los pics son 16f628a.

Los problemas:
El circcuito en la protoboard funciona estupendamente, lo "pongo" ( planchado y atacado) en la placa y el lcd 16x2 deja de funcionar. Quiero decir, que se enciende la pantalla (la retroiluminacion led) pero no muestra caracteres. El pic SI que funciona, pues tengo un led que se enciende al pulsar los botones y al activar la transmision de datos.

Cosas que he hecho:
He pensado que quizas la alimentacion del lcd sea insuficiente y exceda el consumo total del pic, pero lo "descarté" por el hecho que sobre la protoboard los mismos elementos funcionan bien.
He rediseñado la placa varias veces, dandole mas anchos de pista, pistas mas cortas, he eliminado el conector icsp, he añadido el condensador de desacoplo, he quitado el zocalo para soldar el pic directamente y me he dado cabezazos contra la mesa :D

Curiosidades (para mi):
En el ultimo diseño, si dejo el circuito sin encender un dia, al dia siguiente, funciona bien (es decir, se enciende el lcd 16x2) se ven las letras , perooo, al rato empiezan a apagarse lentamente, fluctuan y desaparecen y ya no se ven hasta el dia siguiente.

Tengo dos placas y en una de ellas me da un "nuevo" problema: No me llega nivel alto al pin MCLR. Como se ve en el circuito le meto +5V a traves de una resistencia de 10k (tambien la he cambiado a traves de una 2k2 y tampoco) y, cuando mido tension en el pin MCLR me da entre 0 y 1V

¿Que demonios estoy haciendo mal?? El mismo circuito , con los mismos componentes (hasta los he desoldado probado en la proto y vueltos a montar) funciona bien en Proteus y protoboard....
Opinen por favor!!

Gracias y perdon por el tostón :)
 

Adjuntos

  • selector pic16f628a.jpg
    selector pic16f628a.jpg
    207.6 KB · Visitas: 44
  • pic16f628a_PLACA3_VIEW.pdf
    13.8 KB · Visitas: 38
Los problemas:
He rediseñado la placa varias veces, dandole mas anchos de pista, pistas mas cortas, he eliminado el conector icsp, he añadido el condensador de desacoplo, he quitado el zocalo para soldar e
El ancho de la pista no influye en este caso, manejas 5v y casi nada de amperaje, no necesitas que sean tan gruesas, otro consejo es que nunca sueldes los integrados a la placa directamente, y menos un pic,que los podes reutilizar, ponele el zocalo.
Note que tenias muchos puentes innecesarios, por ejemplo, en el + de alimentacion, si hacias 1cm mas hacia la derecha podias bajar a 90º a vcc, a su vez desde la pata derecha de C1, podias atravezar R14, y pasar entre - y "123" y llegar a R5, o mejor, si en el protoboard funciona, diseñalo como lo tenes montado
 
Consejos:

1- Anchos de la pistas, si el diseño lo permite, mientras más anchas las pistas mejor, independientemente de la corriente que manejan.

2- Las pistas deben entrar lo más centradas posibles a las islas.

3- Capacitores de desacople, tanto el PIC como el LCD no tienen dichos capacitores o lo tienen muy lejos, estos capacitores tienen que estar lo más cerca posible de los pines VCC y GND de c/componente.

4- Islas demasiado chicas en muchos de los componentes, por ej. las islas del PIC te recomiendo hacerlas de 60 mils (entre pin y pin) y 100 o 120 mils de ancho.

5- Tratar de alinear un poco mejor los componentes, de esa forma conseguis pistas más rectas y cortas.

6- Colocar un par de capacitores cerca de la alimentación, desde un electrolítico hasta un cerámico.

Esto por el momento.
 
Usas plano a tierra? por que estas cando muchas vueltas para ella, lo ideal es centralizarlo o usar un plano en lugar de crear una ruta tan larga por otra parte podías llevar esa ruta debajo de las resistencias R5 y R35 para no necesitar otro puente al positivo, pero tambien podrías haber colocado R5 saltando donde esta el conector de 3 pines y conectar lo por ahí pasando debajo de R14, tambien extender la ruta del positivo un poco más y pasar debajo del trimpot
 
En el ultimo diseño, si dejo el circuito sin encender un dia, al dia siguiente, funciona bien (es decir, se enciende el lcd 16x2) se ven las letras , perooo, al rato empiezan a apagarse lentamente, fluctuan y desaparecen y ya no se ven hasta el dia siguiente.

Tengo dos placas y en una de ellas me da un "nuevo" problema: No me llega nivel alto al pin MCLR. Como se ve en el circuito le meto +5V a traves de una resistencia de 10k (tambien la he cambiado a traves de una 2k2 y tampoco) y, cuando mido tension en el pin MCLR me da entre 0 y 1V

)


Gracias por lo de los puentes y tal, pero es esto lo que mas me mosquea... El pic funciona bien (excepto al q no le llega nivel alto al mclr) , responde a los botones, activa la salida y envia datos por la uart.. es el lcd y lo del reset lo que me da problemas.(Los lcds funcionan bien cuando los saco de la placa)

Gracias de nuevo por el interés
 
Última edición:
Si todo funciona fuera de la placa pero no en la placa es que la placa está mal. ¿Donde?, a saber, busca fisuras y cosas así y verifica que no hayas hecho la placa simétrica o algún fallo tonto de ese calibre.
 
Al final he comprado un pic nuevo, lo he programado y soldado a la placa y funciona perfectamente.... Como dicen por ahi, quien no tiene cabeza tiene patas.. :( $$$
 
Atrás
Arriba