ROBO-SHICO-SHICO

ROBO-SHICO-SHICO

sábado, 5 de noviembre de 2011

encender un led con 16f628a en lenguaje c

hola amigos en esta oportunidad aprenderemos a programar un pic o microcontrolador en este caso es el 16F628a en CCS() y la finalidad sera encender un led usando el 16f628a con un cierto retardo paso a paso
y para ello necesitamos tener instalado el PROTEUS y el CCS en nuestro computador

antes que nada el pic16f628a aki les dejo un pekeño diagrama sobre sus pines
en esta oportunidad ocuparemos los 2 puertos pero solo un pin de cada uno para encender nuestro led
este sera el pin RA-0 y el RB-0
para ello empezamos con el codigo:

///////////////////////////////////////////////////////////////codigo//////////////////////////////////////////////////////////////////////////

// las dobles barras son comentarios no son parte del codigo ni son compiladas siempre y cuando esten en al //misma linea


#include <16f628a.h>              //especifico la libreria del pic en este caso 16f628a
#fuses XT                                 //especifica ke utilizara un cristal de cuarzo
#fuses PUT                              //espera unos milisegundos antes de iniciar
#fuses BROWNOUT               //si la tencion no es suficiente para el pic este se reinicia
//#use standard_io(b)
#use delay(clock=4000000)    //especifica los 4Mhz del cristal de cuarzo

void main()                             //funcion principal
{
set_tris_a(00001);                  //configuramos el puerto A como entrada la darle 1 al primer bit
set_tris_b(00000000);           //configuramos el puerto B como salida al dejar
                                              //el primer bit en 0 pero como vees en este caso los deje todos en 0

do{                                        //aki iniciamos un cilo
output_low(pin_b0);               //la salida del pin-B0 la dejamos en 0 o apagado
delay_ms(50);                       //aki le damos un retardo de 50 milisegundos
output_high(pin_b0);             //la salida del pin-B0al dejamos como 1 o encendido
delay_ms(50);              //nuevamente el mismo retardo de los 50 milisegundos


}while(true);
}



///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
ahora viene la simulacion en proteus he aki una imagen:




4 comentarios:

  1. saludos hermano de la Sta Rosa.

    gracias por tu comentario
    me puse a ver tus archivos y estan complejos
    pero interesantes.
    wattson

    feliz año nuevo!
    2012

    ResponderEliminar
  2. muchas gracias amigo mio lo he descuidado un poko pero subire mas material ya ke tengo mucho material disponible pero por cosas de tiempo no he podido subir mas asike lo actualizare gracias y feliz año xD

    ResponderEliminar
  3. Cordial saludo,muy buen ejemplo aprendí mucho, muchas gracias

    ResponderEliminar
  4. Que tal! usted hace trabajos de programación de pics? Necesito programar el 16F628A en C con el MPLAB y compilador HI TECH. Espero respuesta estimado,

    Saludos cordiales.

    José

    ResponderEliminar