}

Página 1 de 2 12 ÚltimoÚltimo
Resultados 1 al 15 de 16

Tema: semaforo con pic16f84a

  1. #1
    Fecha de ingreso
    28 sep, 07
    Mensajes
    30

    Predeterminado semaforo con pic16f84a

    Ola corrral neecesito de sus conocimientos estoy haciendo un circuito como proyecto donde tengo qe hacer las funciones de un semaforo, tengo problemas a la hora de hacer funcionar el circuito. el

    los materiales qe use son : leds.
    pic16f84a
    el oscilador lo hice con un cristal de cuarzo, 2 capacitores de 22 pf.

    Tengo el diagrama del pic: http://www.maicas.net/bot/pic16f84.gif....

    El programa lo realize en C con mikroc pero no se donde esta el error ..... El gragador que uso es el programagor de pic 600 soporta el pic16f84a....

    El codigo es este qe tengo:

    void main()
    {
    int i=0;
    PORTB=0x00; //Inicialización.
    PORTA=0x00;
    TRISB=0x00; //Puerto B como salida.
    while (1)
    {
    PORTB.f1=1; //Encender LED conectado en RB1.
    PORTB.f4=1;
    Delay_ms(5000);
    PORTB.f4=0;
    for(i=0;i<3;i++)
    {
    PORTB.f5=1; //Encender LED conectado en RB2.
    Delay_ms(2000);//Esperar 2 segundos.
    PORTB.f5=0; // Apagar LED RB2
    Delay_ms(1000);//Esperar 1 segundos.
    }
    PORTB.f1=0; //Apagar LED RB1
    do
    {
    PORTB.f3=1; //Encender LED conectado en RB3.
    PORTB.f6=1;
    Delay_ms(5000);//Esperar 5 segundos.
    PORTB.f3=0; // Apagar LED RB3
    PORTB.f6=1;
    }while(PORTB.f3=0);
    for(i=0;i<3;i++)
    {
    PORTB.f2=1; //Encender LED conectado en RB2.
    Delay_ms(2000);//Esperar 5 segundos.
    PORTB.f2=0; // Apagar LED RB2
    Delay_ms(1000);//Esperar 5 segundos.
    }
    PORTB.f6=0;
    }
    }


    Corre a la perfeccion en mikroc
    aca la imagen de mi circuito : http://www.imagengratis.org/?v=img00791.jpg
    la fuente es de 5 volts .!!! utilice un potenciometro para bajar el voltaje!!!!



    vaca Metalera!

  2. #2
    Fecha de ingreso
    08 oct, 05
    Mensajes
    15,907

    Predeterminado

    Por lo que veo estás utilizando alambre telefónico o UTP para tus conexiones. No te recomiendo utilizar ese alambre, ya que es propenso a causar falsos contactos, mejor utiliza alambre calibre 22 (un solo polo), el cable es de varios polos, no te serviría.

    Si funciona bien en el emulador, entonces es probable que haya algo mal conectado en la proto, revisa las conexiones.

  3. #3
    Fecha de ingreso
    13 jun, 09
    Ubicación
    en mi pueblo
    Mensajes
    244

    Predeterminado

    junto con lo dice el compañero Zephyros, yo creo que el problema está en la parte del oscilador, tienes dos condensadores de muy pequeña capacidad 22pF, pero también la placa para prototipos por su construcción le esta agregando una capacidad parasita de las pistas a la capacidad de los condensadores del oscilador y por ese motivo creo que no va bien.
    Te recomiendo que lo montes en una placa perforada para prototipos y nos cuentas.
    Saludos olibeiro
    www.soloelectronica.net

  4. #4
    Fecha de ingreso
    31 oct, 08
    Mensajes
    39

    Predeterminado Nuevo en el sistema

    Mira yo he trabajado con editores mas viejos y ahi se necesita configurar el pic para que reciba senal de cristal y no de resistencia con capacitor, checa esto en el programa y ahi no se como ayudarte

  5. #5
    Fecha de ingreso
    19 dic, 08
    Mensajes
    230

    Predeterminado

    yo trabaje con el mismo pic y con los mismos capacitores con un cristal de 4MHz y me da a la perfeccion, no creo que ese sea el problema.. he usado mikrobasic, me imagino que sera igual, al crear el proyecto te pide el valor del cristal y el modelo del pic, ya que lo seleccionas le das en default para que te configure las banderas automaticamente, no se si hicieras eso, sino checalo por ahi.

    otra cosa, que te hace mal.. no prende nada o se quedan prendidos los leds o que hace?

    y por ultimo te aconsejo que en vez de potenciometro para el voltaje uses un 7805 que te da salida a 5V

  6. #6
    Fecha de ingreso
    13 jul, 08
    Ubicación
    Juarez
    Mensajes
    1,067

    Predeterminado

    mandame un correo o agregame a tu msngr ========= t puedo ayudar, precisamente estoy viendo los pics 16f84a, tengo un programa para semaforo pero no es en c pero te puede servir, y pues la foto de tu circuito ya armado la estoy revisando... saludos.
    Nada nos engaña tanto como nuestro propio juicio [DaVinci]

  7. #7
    Fecha de ingreso
    28 sep, 07
    Mensajes
    30

    Predeterminado

    Ola Gracias por sus respuestas, pues lo que hace es que prende el led rojo con el verde pero de ahi no pasa :S deberia de seguir el amarillo como lo dice mi codigo pero no lo hace, configure el oscilador desde mikro c con el oscilador XT pero nomas noo quiere :S


    vaca Metalera!

  8. #8
    Fecha de ingreso
    28 sep, 07
    Mensajes
    30

    Predeterminado

    Cita Iniciado por Zephyros Ver mensaje
    Por lo que veo estás utilizando alambre telefónico o UTP para tus conexiones. No te recomiendo utilizar ese alambre, ya que es propenso a causar falsos contactos, mejor utiliza alambre calibre 22 (un solo polo), el cable es de varios polos, no te serviría.

    Si funciona bien en el emulador, entonces es probable que haya algo mal conectado en la proto, revisa las conexiones.

    Ok hare eso cambiare tu cable por el de calibre 22, ese cable es el que me recomiendan


    vaca Metalera!

  9. #9
    Fecha de ingreso
    28 sep, 07
    Mensajes
    30

    Predeterminado agrego

    Cita Iniciado por [N3M0] Ver mensaje
    mandame un correo o agregame a tu msngr nehemias_romo@ hot. t puedo ayudar, precisamente estoy viendo los pics 16f84a, tengo un programa para semaforo pero no es en c pero te puede servir, y pues la foto de tu circuito ya armado la estoy revisando... saludos.


    ya te agregue men !!!


    vaca Metalera!

  10. #10
    Fecha de ingreso
    07 oct, 09
    Ubicación
    Mexico D.F.
    Mensajes
    731

    Predeterminado

    En la foto de tu circuito no veo la resistencia de reset ni las resistencias para los leds.

    Saludos!

  11. #11
    Fecha de ingreso
    28 sep, 07
    Mensajes
    30

    Predeterminado

    Espero y me ayuden alo mejor este mal en el programa, no me gusta ensamblador :S jaja tendre que aprender bueno Solo quiero que los pines del B sean salidas y que haga la funcion del semaforo espero y me puedan ayudar con el programa, tengo MPLAB para ensamblador y Mikroc para C


    vaca Metalera!

  12. #12
    Fecha de ingreso
    28 sep, 07
    Mensajes
    30

    Predeterminado

    Cita Iniciado por mcpiebot Ver mensaje
    En la foto de tu circuito no veo la resistencia de reset ni las resistencias para los leds.

    Saludos!
    Es necesario el pin del Reset ??? entoncess que materiales puedo utilizar para activarlo y las resistencias tenia entendido que si van pero no se de cuanto ??


    vaca Metalera!

  13. #13
    Fecha de ingreso
    19 dic, 08
    Mensajes
    230

    Predeterminado

    el pin de reset va a voltaje solo con una resistencia, yo le pongo de 1k pero casi puede ser la que sea...si no le pones esto se estara reseteando y no pasara de la primer linea. este pin si buscas el diagrama del pic aparece como MCL. es el pin 1 creo

    para los leds, para fines practicos puedes ponerle de unos 220 o 330, eso solo para que no se quemen

    te aconsejo que hagas un programa que solo prenda y apague un led o algo mas sencillo, y si si funciona eso entonces es el programa el que esta mal, asi podemos reducir loserrores posibles.. aunque estoy casi seguro que el problema es que pin de reset

  14. #14
    Fecha de ingreso
    28 sep, 07
    Mensajes
    30

    Predeterminado

    HOla muchas gracias ia vii el problema... siii es el pin del reset. Cuando lo configure en el software del modulo del programador estaba en off y lo que hice fue pasarle 5 volts a la entrada con una resistencia de 1 K y asii ya pudo funcionar, Gracias compañeros subire el video para que lo puedan ver, pues el codigo estaba correcto el unico inconveniente fue la configuracion del PIC


    vaca Metalera!

  15. #15

    Predeterminado

    ammm mira de programacion en ensamblador se me hace algo rara, pero en fin te paso este codigo en c. correlo en cualquier compilador k tenga c y te andara perfecto. yo uso el pcw en ccs.

    #include <16F84A.h>
    #fuses XT, NOWDT, NOPROTECT
    #use delay (clock=4000000)
    #use fast_io(b)
    int contador=0;
    void main()
    {
    SET_TRIS_B(0x00);
    inicio:
    OUTPUT_B(0x04);
    output_high(PIN_B4);
    delay_ms(2000);
    {
    for (contador=0;contador<=2;contador++)
    {
    OUTPUT_B(0x00);
    output_low(PIN_B4);
    delay_ms(100);
    OUTPUT_B(0x04);
    output_high(PIN_B4);
    delay_ms(120);
    }
    }
    OUTPUT_B(0x02);
    delay_ms(160);
    OUTPUT_B(0x01);
    output_high(PIN_B6);
    delay_ms(2000);
    {
    for (contador=0;contador<=2;contador++)
    {
    OUTPUT_B(0x00);
    output_low(PIN_B6);
    delay_ms(100);
    OUTPUT_B(0x01);
    output_high(PIN_B6);
    delay_ms(120);
    }
    output_high(PIN_B5);
    delay_ms(160);
    }



    goto inicio;
    }

Página 1 de 2 12 ÚltimoÚltimo

Permisos de publicación

  • No puedes crear nuevos temas
  • No puedes responder temas
  • No puedes subir archivos adjuntos
  • No puedes editar tus mensajes
  •  
Dale LIKE!
Síguenos