19 jul 2012

Parpadeo de un led con PIC 16F84A


Para empezar tomaremos el ya clásico proyecto, también denominado el "Hola mundo" de los Microcontroladores que consiste en hacer parpadear un led. 

Recordemos que estaremos haciendo uso del
Compilador C Ccs en su versión 4.023 para programar el Microcontrolador y el Proteus v7.7 para simular nuestro circuito. 

El Microcontrolador que usaremos en esta ocasión sera el 16F84a. 

Aquí el código


//*******************************************************************************************//
//  Ejemplo 1_Blink led                                                                                                      
//  MICROCONTROLADOR: PIC16F84a                                                                       
//  WEB:  www.ElectronicPIC.blogspot.com                                                                   
//  COMPILADOR:  CCS C Compiler v.4023                                                                 
//  DESCRIPCION: Parpadeo de un led conectado al PIN_B0                                       
//*******************************************************************************************//
#include <16F84A.h>

//*******************************************************************************************//
//                               CONFIGURACIÓN DEL MICROCONTROLADOR                       
//*******************************************************************************************//
#FUSES NOWDT
#FUSES XT
#FUSES PUT

#byte PORTA = 0x05
#byte TRISA = 0x85
#byte PORTB = 0x06
#byte TRISB = 0x86

#use delay(clock=4000000)
//*******************************************************************************************// 
#define Enciende      Output_High
#define Apaga         Output_Low
#define Conmuta       Output_toggle

#define LED           PIN_B0
//*******************************************************************************************//
//                                 CUERPO PRINCIPAL DEL PROGRAMA                                       
//*******************************************************************************************//

//PRINCIPAL
void main(void)
{
   TRISA=(0x00);
   TRISB=(0x00);
  
   while(true)  {                                  //Bucle infinito
   Conmuta (LED);                            //Conmuta el estado logico del PIN_B0
   delay_ms(1000);                           //Retardo de 1 seg. 
    }                                      
}                                                        //Fin void main

//*******************************************************************************************// 
//*******************************************************************************************// 


Código en C y el archivo Hex


El circuito simulado en Proteus:


Parpadeo de led
Archivo de simulación en protesus Blink_led


aquí un vídeo donde se ve el funcionamiento del programa. 





No hay comentarios:

Publicar un comentario