Autor Tema: Ayuda con PIC-16F84A (blink-led)  (Leído 12752 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado sentinela_x

  • PIC10
  • *
  • Mensajes: 15
Ayuda con PIC-16F84A (blink-led)
« en: 26 de Mayo de 2009, 01:45:04 »
Hola gente de todopic, soy nuevo en el foro!  :mrgreen:

Soy estudiante de ingenieria electrónica (1er año) y estoy iniciandome en esto de la programacion de los pics, me parece mas que interesante! es increible lo que se puede llegar a hacer con tan solo unos componentes..

Lastima que no entiendo mucho y espero que me puedan ayudar con mi primer proyecto.

Es un Led que titila.. pero .... en mi caso NO titila se queda siempre encendido..
el circuito que use es el siguiente.

y la programación la realice en PIC SIMULATOR IDE. y es la siguente..

Citar
Alldigital

TrisA = %00000000

Ciclo:

PORTA.2 = 1 ' Estado 1 del pin RA2
Waitms 1000 ' Esperar 1 segundo
PORTA.2 = 0 ' Estado 0 del pin RA2
Waitms 1000 ' Esperar 1 segundo

Goto ciclo
End

Hice la simulación y el led titila exitosamente   .. luego compile y lo pase a lenguaje .hex   abri este archivo con IC-PROG (ya configurado segun mi pic y mi programador) y la opcion Oscillator se paso sola a RC (no se lo que significa).
luego para comprobar que este todo bien toque en "Verify" y salio un error "Failed at address 0000h!"   con error y todo
presione el boton Program All  ,, se lleno una barrita y dio un OK como si todo hubiera salido bien..
Monte el Pic en mi protoboard alimentada con 5.2v 500ma ..  el led quedo encendido.. y nunca se apago. No se que es lo que estoy haciendo mal..  Ya intente sin los condensadores pero nada..    Alguna sugerencia??

desde ya muchas gracias por leer.   




« Última modificación: 26 de Mayo de 2009, 01:53:51 por sentinela_x »
Es mejor morir de pie que vivir toda una vida de rodillas.

Desconectado Suky

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 6758
Re: Ayuda con PIC-16F84A (blink-led)
« Respuesta #1 en: 26 de Mayo de 2009, 09:22:06 »
Opción Oscillator indica que tipo de oscilador estas usando, seguramente en tu caso estas usan un XT de 4MHz. La verificación se hace después de programar.
En el protoboard (o en el circuito que estés realizando) asegura bien las conexiones, el cristal y sus capacitores deben estar próximos al PIC, y el pin Mclr con una resistencia a Vdd.
No contesto mensajes privados, las consultas en el foro

Desconectado Cryn

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 4169
Re: Ayuda con PIC-16F84A (blink-led)
« Respuesta #2 en: 26 de Mayo de 2009, 14:07:38 »
no te olvides colocar un condensador de 100nF (104) y para que no quede solo uno de 10uF, ambos entre los terminales de alimentación, VDD y GND
.

Desconectado sentinela_x

  • PIC10
  • *
  • Mensajes: 15
Re: Ayuda con PIC-16F84A (blink-led)
« Respuesta #3 en: 26 de Mayo de 2009, 15:01:07 »
Opción Oscillator indica que tipo de oscilador estas usando, seguramente en tu caso estas usan un XT de 4MHz. La verificación se hace después de programar.
En el protoboard (o en el circuito que estés realizando) asegura bien las conexiones, el cristal y sus capacitores deben estar próximos al PIC, y el pin Mclr con una resistencia a Vdd.

en el diagrama que subi ,, la resistencia no esta directamente al VDD.. osea que esta mal ?
mi oscilador es uno de 4Mhz,,  tengo que elegir la opcion XT ? antes de darle a Program all???
otro detalle.. yo conecte todo lo que dice GND y 0v al negativo del transformador.. se supone que eso esta bien ?


El pic que estoy usando es el PIC 16F84-A     con un oscilador de 4Mhz


gracias por responder suky y cryn




« Última modificación: 26 de Mayo de 2009, 15:04:33 por sentinela_x »
Es mejor morir de pie que vivir toda una vida de rodillas.

Desconectado Suky

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 6758
Re: Ayuda con PIC-16F84A (blink-led)
« Respuesta #4 en: 26 de Mayo de 2009, 16:00:55 »
en el diagrama que subi ,, la resistencia no esta directamente al VDD.. osea que esta mal ?
Yo veo que si esta conectado a 5V ósea Vdd.
mi oscilador es uno de 4Mhz,,  tengo que elegir la opcion XT ? antes de darle a Program all???
Exactamente.
otro detalle.. yo conecte todo lo que dice GND y 0v al negativo del transformador.. se supone que eso esta bien ?
Espero que cuando dices Transformador (Tensión Alterna) en realidad sea una fuente (Tensión continua)   :mrgreen: La fuente tiene que ser de 2 a 5.5V según indica Datasheet. Si es mayor puedes armar una simple fuente con el integrado LM7805.
No contesto mensajes privados, las consultas en el foro

Desconectado sentinela_x

  • PIC10
  • *
  • Mensajes: 15
Re: Ayuda con PIC-16F84A (blink-led)
« Respuesta #5 en: 26 de Mayo de 2009, 21:00:37 »
Si. mi transformador tiene una salida de 5.5 v de C.C .. pero por las dudas  voy a usar una vieja fuente de computadora  para volver a armar el proyecto . muy bueno el blog de suky y gracias por la ayuda.   :)
Es mejor morir de pie que vivir toda una vida de rodillas.

Desconectado sentinela_x

  • PIC10
  • *
  • Mensajes: 15
Re: Ayuda con PIC-16F84A (blink-led)
« Respuesta #6 en: 27 de Mayo de 2009, 00:21:12 »
asi conecte todo,, alguien me puede decir si esta bien ??

Es mejor morir de pie que vivir toda una vida de rodillas.

Desconectado Cryn

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 4169
Re: Ayuda con PIC-16F84A (blink-led)
« Respuesta #7 en: 27 de Mayo de 2009, 00:36:52 »
si esta bien, pero el led no estaba en RA2?

y te recomiendo colocar otro condensador de 100nF en paralelo a tu C1

y por si las dudas, GND=NEGATIVO de la Fuente=0 Lógico=0V
VCC=VDD=5V=1 Lógico=POSITIVO de la fuente
.

Desconectado sentinela_x

  • PIC10
  • *
  • Mensajes: 15
Re: Ayuda con PIC-16F84A (blink-led)
« Respuesta #8 en: 27 de Mayo de 2009, 01:52:29 »

Citar
si esta bien, pero el led no estaba en RA2?
si, pero ahora esta en RB0 cambie la programación también

Citar
y te recomiendo colocar otro condensador de 100nF en paralelo a tu C1
Ok lo voy a colocar .

Citar
y por si las dudas, GND=NEGATIVO de la Fuente=0 Lógico=0V
VCC=VDD=5V=1 Lógico=POSITIVO de la fuente

no entendi esa parte..   me explicas mejor ? es que soy novato en esto.  :mrgreen:
Es mejor morir de pie que vivir toda una vida de rodillas.

Desconectado Suky

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 6758
Re: Ayuda con PIC-16F84A (blink-led)
« Respuesta #9 en: 27 de Mayo de 2009, 02:08:28 »
Citar
y por si las dudas, GND=NEGATIVO de la Fuente=0 Lógico=0V
VCC=VDD=5V=1 Lógico=POSITIVO de la fuente

no entendi esa parte..   me explicas mejor ? es que soy novato en esto.  :mrgreen:
A lo que se refiere es que:

0 Lógico equivale 0Volts=GND
1 Lógico equivale a 5Volts=Vdd

Pero esto depende de la lógica del puerto. Por ejemplo si es TTL:
0 Lógico es dentro del rango 0 a 0.8 Volts
1 Lógico es dentro del rango 2 a 5.5 Volts

Si es Schmitt Trigger:
0 Lógico es dentro del rango 0 a 0.2Vdd
1 Lógico es dentro del rango 0.8Vdd a Vdd
No contesto mensajes privados, las consultas en el foro

Desconectado Cryn

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 4169
Re: Ayuda con PIC-16F84A (blink-led)
« Respuesta #10 en: 27 de Mayo de 2009, 10:30:17 »
Citar
y por si las dudas, GND=NEGATIVO de la Fuente=0 Lógico=0V
VCC=VDD=5V=1 Lógico=POSITIVO de la fuente

no entendi esa parte..   me explicas mejor ? es que soy novato en esto.  :mrgreen:

si exactamente como dijo suky, te di los nombres que son sinónimos en cuanto a la alimentación y lógica digital, para que te vayas familiarizando.

un saludo
.

Desconectado xocas

  • Administrador
  • PIC24H
  • *******
  • Mensajes: 2312
Re: Ayuda con PIC-16F84A (blink-led)
« Respuesta #11 en: 27 de Mayo de 2009, 16:33:47 »
hola

en PSI una vez que seleccionas el PIC puedes ir al menú 'Options -> Configuration Bits' y establecer los parámetros. eso te devolverá un valor en 'Configuration Word (2007h)'.
es muy buena costumbre añadir esa palabra de configuración al principio de nuestro código para evitarnos olvidos o despistes a la hora de grabar el PIC. te dejo un ejemplo de como suelo hacerlo en mi caso:


Código: [Seleccionar]
'PIC 16F84A
'Led intermitente en RB0
'27/05/2009

Define CONF_WORD = 0x3FF1
'Code Protection = OFF
'Power-up Timer = Enabled
'Watchdog Timer = Disabled
'Oscillator Selection = XT

Define CLOCK_FREQUENCY = 4   '4 Mhz

AllDigital   'E/S digitales

TRISA = %00000     'Todos como salidas
TRISB = %00000000  'Todos como salidas

PORTA = 0  'Puertos a 0
PORTB = 0

ciclo:
PORTB.0 = 1  'Estado 1 del pin RB0
WaitMs 1000  'Esperar 1 segundo
PORTB.0 = 0  'Estado 0 del pin RB0
WaitMs 1000  'Esperar 1 segundo
Goto ciclo

End  

¿porqué aparece en tu código Waitms y no WaitMs que es lo correcto...? espero que te sirva ya que en principio no veo un motivo para que no lo haga.

un saludo


Desconectado sentinela_x

  • PIC10
  • *
  • Mensajes: 15
Re: Ayuda con PIC-16F84A (blink-led)
« Respuesta #12 en: 27 de Mayo de 2009, 21:13:41 »
xocas06 use tu programación en mi Pic.. la mala noticia es que el led conectado a RB0 se queda siempre encendido,,  yo pienso que tiene que ser un error en mi circuito o en la forma en la que paso de .hex al pic..   te comento yo uso el IC PROG.. le doy a abrir elijo el  ledintermintente.hex cambio a modo XT  y le doy program all.   luego lo monto en el protoboard... y queda siempre encendido.. solo el RB0 lo cual es un avance ya que antes con mi programacion el led se encendia con todas las salidas.

pd. hay algun otro programa para Programar  que directamente lo monte al PIC?
Es mejor morir de pie que vivir toda una vida de rodillas.

Desconectado Suky

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 6758
Re: Ayuda con PIC-16F84A (blink-led)
« Respuesta #13 en: 27 de Mayo de 2009, 21:56:45 »
Si utilizas el código de Xocas la opción XT debería ya estar seleccionada! Revisa nuevamente las conexiones del Mclr, y las del oscilador.
No contesto mensajes privados, las consultas en el foro

Desconectado sentinela_x

  • PIC10
  • *
  • Mensajes: 15
Re: Ayuda con PIC-16F84A (blink-led)
« Respuesta #14 en: 27 de Mayo de 2009, 22:49:06 »
ITS ALIVE !!!  FUNCIONAAAAAAA!!!!!!!!!!    :-/ :-/ :-/ :-/ :-/
que felicidad.. después de tanto esfuerzo y intentos .  por fin me salio :) !!
mi error era que estaba usando el diagrama de un pic 16f8X ,, yo pense que era el mismo que el 16f84A .. pero NO,, era muy diferente, baje el datasheet correji los errores en el protoboard y ahora funciona .. gracias a todos los que ayudaron, ya los voy a estar molestando con otros proyectos  :mrgreen: .
Es mejor morir de pie que vivir toda una vida de rodillas.


 

anything