TODOPIC

Microcontroladores PIC => Todo en microcontroladores PIC => Mensaje iniciado por: elmasvital en 10 de Septiembre de 2005, 12:54:00

Título: 16f628 con 74hct164... deja de funcionarme
Publicado por: elmasvital en 10 de Septiembre de 2005, 12:54:00
Por alguna razón que desconozco no me funcionan los registros de desplazamiento que estoy usando... el otro día los estube haciendo funcionar sin problemas y ahora joder es q no enciendo ni una bombilla con ellos...

Así que necesito ayuda... debo estar ofuscado y no veo nada...

Lo he simulado en proteus... En mi defensa diré que es mi primera simulación con proteus y no me aclaro mucho. Como el pic 16f628 no está he usado uno de un ejemplo y como no encontraba los leds he usado un led de 7 segmentos de catodo común. El 16f628 tiene oscilador interno por lo que el que vienen en el proteus no lo tengo puesto.

¿Qué debería hacer...? Pues lo que se ve en la simulación... 1 led q uso de test que lo ilumina directamente el pic... conectado a RA0 y otro led conectado al 74hc164 que debería encenderse de vez en cuando... como hace en la simulación...

Qué sucede en la realidad?... Hasta que el pic se inicia a los 5 segundos (meto ese retardo por un problema con el pipo2 con los pics con reloj interno) parpadea de forma aleatoria el led del 74hc164... sin embargo cuando empieza el programa parpadea el led de test pero NUNCA el del 74hc164.

He probado de todo... conectar las dos patillas de datos del 74hc164... la patilla libre a vcc... he probado que el reloj parpadea (va de high a low y viceversa)... y la verdad el patillaje está correcto.

Ayer mismo lo tenía funcionando y lo único que he hecho nuevo es ponerle al 7805 los condensadores de 330nF y 100nF que pone en el datasheet. Ahora probaré de quitarlos... yo que se...

En fin a ver si me dais alguna idea...

Archivos de prouteus hex y .c
Título: RE: 16f628 con 74hct164... deja de funcionarme
Publicado por: DannielHP en 10 de Septiembre de 2005, 13:22:00
Hola, para empezar, veo que tienes problemas con el Proteus.  A la izquierda de la ventana hay una etiqueta que dice "DEVICES" y por un lado tiene dos botones marcados con la letra "P" y "L" Y si presionas la "P" se abrirá una ventana que te muestra todos los dispositivos que maneja Proteus. En la parte que dice "Keyword" escribe "LED-" y te va a mostrar una lista de todos los tipos de LED que maneja, solo das doble click en el que deseas y se agregará a la lista. Lo mismo haces con el PIC y los dispositivos que desees.

No tienes que usar un LED de prueba, el mismo pin del PIC se pone en color rojo si está a nivel alto y en azul si está a nivel bajo. Por lo demás, habria que checar tu diagrama y tu programa. Al menos con esto espero ayudar un poco.
Saludos
Título: RE: 16f628 con 74hct164... deja de funcionarme
Publicado por: elmasvital en 10 de Septiembre de 2005, 13:39:00
Tengo proteus 5.2 y no sale lo que mencionas como keyword para hacer la busqueda del led y en la parte de los diodos. A ver si termino de descargar la 6.7


1 dato es que creo que el fallo está con el registro de desplazamiento porque el pic ilumina perfectamente el led que defino arriba como test y es el que manejra directamente el pic.

Actualizo: Por curiosidad he desconectado la patilla 8 del 74hc164 que corresponde al reloj... Y le da por funcionar... osea... está funcionando sin reloj... por lo que no se de donde se lo saca... aunque si le acerco el dedo funciona cuando deja de hacerlo de forma aleatoria... ArdiendoArdiendoArdiendoArdiendoArdiendoArdiendo



1 saludo y gracias... a ver si alguien me da una idea de lo que estaria fallando o voy a desfallecer
Título: RE: 16f628 con 74hct164... deja de funcionarme
Publicado por: DannielHP en 10 de Septiembre de 2005, 14:05:00
Bueno, yo he comenzado a usar el Proteus desde la versión 6.5 y ahora uso la 6.7 SP3 y no he tenido problemas de ese tipo. Tal vez sea el programa, prueba con la versión 6.7.
Yo no he usado el 74hc164 pero en todos los dispositivos que he usado en el proteus, no es necesario conectarles un cristal o reloj, ese lo configuras en sus propiedades. Como al PIC, funciona sin conectarle un cristal.
Si sigues con el problema, podrias poner aquí tu código que estas usando y la forma en que conectas los dispositivos y a ver si podemos hacer algo.
Saludos.
Título: RE: 16f628 con 74hct164... deja de funcionarme
Publicado por: DannielHP en 10 de Septiembre de 2005, 14:44:00
Oops!, yo no manejo C, creo que no te puedo ayudar mucho con tu código. Por curiosidad intenté simular tu programa en el Proteus y no hace nada.
Saludos.
Título: RE: 16f628 con 74hct164... deja de funcionarme
Publicado por: elmasvital en 10 de Septiembre de 2005, 16:09:00
Bueno parece ser que el problema es que la patilla 9 de clear debe estar en HIGH y yo no lo tenía así. De hecho jamás lo había hecho así. Tengo diagramas aqui que no conectan la patilla 9 a HIGH.

Pero conectándolo así parece que en principio sí que va bien.

Ahora entiendo porque cuando le ponía el dedo cerca de esa patilla se encendía... era ruido porque esa patilla era de entrada esperando un 1.