Está en la página 1de 11

Creacin de un proyecto utilizando MPLAB X y XC8 - Contador binario

Ing Sebastin Gmez V.


sgomez734@misena.edu.co

INTRODUCCIN
El presente documento tutorial pretende explicarle a los aprendices cmo crear un proyecto
utilizando el entorno de programacin MPLAB X y el compilador XC8 como herramienta de
programacin en lenguaje C para los microcontroladores PIC18F4550, utilizando el bootloader
CDC, el cual se encuentra preinstalado en los microcontroladores.
En la primera parte de este documento se describen los pasos para crear un proyecto, continua
con la modificacin del vector de programa para el bootloader, sigue con la explicacin de la
compilacin y termina con el procedimiento para descargar el programa al microcontrolador.
En este documento se presenta un ejemplo de un programa que es un contador binario
ascendente y descendente utilizando el puerto D como salida y el RA0 como entrada.

Creacin de un proyecto en MPLAB X - XC8


Para iniciar, se debe ejecutar el programa MPLAB X, con el siguiente icono:

Previamente se debe haber instalado el driver y el programa CCS en el computador para continuar
con el proceso.
Al iniciar se lanza el siguiente pantallazo

Cuando el ambiente de programacin se inicia se muestra la siguiente ventana:

Creacin de un proyecto utilizando MPLAB X y XC8 - Contador binario

Ing Sebastin Gmez V.


sgomez734@misena.edu.co

En este ambiente de programacin se van a implementar las aplicaciones con el microcontrolador.


Ahora vamos a crear un proyecto, en la siguiente ruta: File / New Project...

En la siguiente ventana se van a escoger las opciones Microchip Embedded / Standalone Project,
pulsando luego la tecla NEXT como se muestra a continuacin:
Paso 1

Paso 2

Paso 3

Creacin de un proyecto utilizando MPLAB X y XC8 - Contador binario

Ing Sebastin Gmez V.


sgomez734@misena.edu.co

En el siguiente pantallazo se debe seleccionar el microcontrolador con el que se va a trabajar:


PIC18F4550, como se muestra a continuacin:

Paso 4

Paso 5

Seleccionamos en Hardware Tools: Simulator y se pulsa NEXT:


Paso 6

Paso 7

A continuacin seleccionamos el complador a utilizar, en este caso seleccionamos XC8 y se pulsa


NEXT:

Paso 8

Paso 9

Creacin de un proyecto utilizando MPLAB X y XC8 - Contador binario

Ing Sebastin Gmez V.


sgomez734@misena.edu.co

En el siguiente pantallazo se muestra la informacin de la ubicacin del proyecto a crear, y se le


debe ingresar un nombre, luego se pulsa Finish:

Paso 10

Paso 11

En ese momento se crean las carpetas que se van a utilizar en el proyecto, en la parte izquierda se
observa Projects, que es el rbol de carpetas del proyecto; hay que crear un archivo donde se va a
guardar el programa que se va digitar, para hacerlo se debe dar clic derecho sobre la carpeta
SOURCE FILES / NEW / C SOURCE FILE...
Paso 12

Paso 13

Paso 14

En la ventana que se abre a continuacin se le da un nombre al archivo que va a contener el


cdigo del programa, como se muestra a continuacin:

Creacin de un proyecto utilizando MPLAB X y XC8 - Contador binario

Ing Sebastin Gmez V.


sgomez734@misena.edu.co
Paso 15

Paso 16

Se abre una pgina en blanco. Para realizar un programa de prueba, se va a digitar el siguiente
cdigo:
//declaracin de libreras
#include <xc.h>
//Bits de configuracin de fusibles
#pragma config PLLDIV = 5, CPUDIV = OSC1_PLL2, USBDIV = 2
#pragma config FOSC = HS, FCMEN = OFF, IESO = OFF
#pragma config PWRT = OFF, BOR = OFF, VREGEN = OFF
#pragma config WDT = OFF, WDTPS = 32768
#pragma config MCLRE = OFF, LPT1OSC = OFF, PBADEN = OFF
#pragma config STVREN = ON, LVP = OFF, ICPRT = OFF, XINST = OFF
#define _XTAL_FREQ 20000000 // Configuracin del cristal: 20Mhz
//Declaracin de variables globales
int contador;
//declaracin de funciones
void retardo(int tiempo);
//Programa
void retardo (int tiempo)
{//Funcin que realiza el retardo en milisegundos. Esta funcin para todo el programa
//Declaracin de variables locales:
int i;
//Ciclo de repeticin for, donde se realiza retardos de 1 ms tantas veces como
//la variable tiempo diga.
for(i=1;i<=tiempo;i++)
{
__delay_ms(1);
}
}
void main()
{
int j;
//Funcin principal, siempre se ejecuta al iniciar el programa.
//Configuracin del microcontrolador.
//Se utiliza 0 para configurar como salida y 1 como entrada.
TRISA=0;
ADCON1 =0X0F;
TRISD=0X00; // Configura el puerto B como salida
contador=0; //Se inicializa la variable contador en 0

Creacin de un proyecto utilizando MPLAB X y XC8 - Contador binario

Ing Sebastin Gmez V.


sgomez734@misena.edu.co

/*
* El while es un ciclo de repeticin que ejecuta las instrucciones que estan entre { }
* mientras que la condicin sea verdadera, que en este caso
* En este caso, el while est como un bucle infinito, porque tiene una condicin que siempre va a
* ser verdadera
*/
while(1)
{
//Pregunta si la entrada est activa para incrementar la variable contador
if(PORTAbits.RA0==1)
{
contador++; //incrementa en 1 la variable contador
}
//Pregunta si la entrada est inactiva para decrementar la variable contador
if(PORTAbits.RA0==0)
{
contador--; //decrementa en 1 la variable contador
}
LATD=contador; //enva al puerto D el valor de la variable contador.
retardo(200); //realiza retardo en milisegundos
}
}

Para poder utilizar el Bootloader es necesario cambiar el vector de inicio del programa como se
muestra a continuacin:
Paso 17:

Abrir
propiedades del
proyecto

Se abrir una ventana en la que se puede configurar algunas caractersticas del proyecto, en este
caso se debe ir a la opcin XC8 linker / Additional Options /Codeoffset e ingresar el dato 0x1800.

Creacin de un proyecto utilizando MPLAB X y XC8 - Contador binario

Ing Sebastin Gmez V.


sgomez734@misena.edu.co
Paso 19:

Paso 18:

Opcin
Additional
options

Selecciona la
opcin XC8 linker

Paso 20:

Se coloca el valor
0x1800

Paso 21

Compilacin
La compilacin consiste en la traduccin del cdigo digitado por el programador a cdigo de
mquina, similiar a este:
:04000000C9EF3FF015
:107F9200076A066A0001CEEF3FF0000E956E000EF2
:107FA200076E000E066E80A002D0064A072A80B035
:107FB20003D00606D8A0070606C08CFF000E026E8C
:107FC200C80E016EE6EC3FF0EED7000E056E010E14
:107FD200046E0AD0070E036E7D0EE82EFED7032E26
:107FE200FCD700F0044A052A0250800A036E0450AE
:0E7FF200015C0550800A0358D8A01200EBD79E
:020000040020DA
:08000000FFFFFFFFFFFFFFFF00
:020000040030CA
:0E000000240C191EFF0181FF0FC00FE00F40FE
:00000001FF

Para este curso, se utilizar el compilador XC8, el cual est disponible en la pgina oficial de
microhip.
Para compilar un proyecto se debe pulsar el botn:

Al final en la ventana de OUTPUT deber mostrar el mensaje:

Creacin de un proyecto utilizando MPLAB X y XC8 - Contador binario

Ing Sebastin Gmez V.


sgomez734@misena.edu.co

Simulacin de un programa:
Para la simulacin y pruebas de un programa en MPLAB X se debe tener en cuenta que cuenta con
unas herramientas que sirven para realizar diagnstico, tales como monitoreo de variables.
Watches: Sirve para verificar el estado de variables en tiempo real. Para abrir esta ventana se
puede acceder en el men: Window / Debugging / Watches

Se abrir una ventana en la parte inferior, en donde se podrn ingresar los nombres de las
variables:

Creacin de un proyecto utilizando MPLAB X y XC8 - Contador binario

Ing Sebastin Gmez V.


sgomez734@misena.edu.co

En el campo <Enter new watch>, se da doble clic y en este caso se va a digitar "contador", como se
muestra a continuacin:

Si se desea agregar campos de visualizacin de datos, basta con dar clic derecho sobre la barra de
categoras y seleccionar las opciones:

Despus de dar en clic ACEPTAR en la ventana Watches quedar asi:

DESCARGA DE PROGRAMA EN EL MICROCONTROLADOR


El microcontrolador debe tener precargado el CDC bootloader, el cual se habilita cuando se
presiona los botones en la siguiente secuencia:
1. Botn PROGRAM (negro)
2. Botn RESET(rojo)
3. Botn PROGRAM (negro)
En ese momento el micro queda listo para recibir el programa, entra en modo boorloader; se
deber abrir el programa para descargarlo ejecutando el comando con WIIN+R SIOW, abrir la
siguiente aplicacin:

Creacin de un proyecto utilizando MPLAB X y XC8 - Contador binario

Ing Sebastin Gmez V.


sgomez734@misena.edu.co

Paso 1

Se debe seleccionar en opciones OTRO:


Paso 2

Luego se pulsa el botn Buscar y selecciona el puerto que ha detectado el microcontrolador:


Paso 3

Paso 4

El botn UPLOAD FIRMWARE pasa a ser color verde, ah cargamos el archivo .hex compilado:

Paso 5

Paso 6
Paso 7
Paso 7

Una vez se ha pulsado la tecla abrir, el programa es inmediatamente descargado al


microcontrolador.
ACTIVIDAD:
Podr utilizar el simulador de circuitos electrnicos Proteus para probar los montajes.

Creacin de un proyecto utilizando MPLAB X y XC8 - Contador binario

Ing Sebastin Gmez V.


sgomez734@misena.edu.co

1. Debe realizar una secuencia de control para un motor paso a paso.


2. Debe realizar una secuencia en la que se active uno a uno los pines de un puerto en orden
ascendente y luego descendente.

También podría gustarte