Vamos a aprender a crear un proyecto en Mplab X IDE usando el compilador XC8 para el microcontrolador PIC16f788a, aunque los siguientes pasos servir para cualquier microcontrolador PIC.
Antes de iniciar
Instala Mplab X IDE usando las siguientes guías:
Pasos para crear un proyecto en Mplab x IDE
Crear un proyecto nuevo
Abre MPLAB X IDE.
En el menú selecciona: File → New Project...
También puedes utilizar: Ctrl + Shift + N
Se abrirá el asistente de creación de proyectos.
Asistente de creación de Mplab X.
Seleccionar el tipo de proyecto
En la ventana New Project:
- Selecciona Microchip Embedded.
- Selecciona Standalone Project.
- Presiona Next.
La opción Standalone Project es la adecuada para comenzar un proyecto tradicional con un microcontrolador PIC y XC8.
Seleccionar el microcontrolador
En Device debes seleccionar:
- Seleccionamos la familia de los micros: 16f 18f entre otros.
- Seleccionamos el microcontrolador, en nuestro caso el pic16f877a.
- Damos en siguiente.
Seleccionar el programador/debugger
MPLAB te preguntará qué herramienta de hardware utilizarás.
Por ejemplo, si tienes un:
- PICkit 3
- PICkit 4
- MPLAB SNAP
- ICD 3
- ICD 4
selecciona el dispositivo correspondiente.
Si todavía no tienes programador, puedes seleccionar: Simulator
Esto es especialmente útil para comenzar porque podrás compilar y realizar determinadas pruebas utilizando el simulador de MPLAB X.
Seleccionar el compilador
En Compiler Toolchain debes seleccionar el compilador XC8 que instalaste.
Normalmente aparecerá algo similar a: XC8 o: XC8 vX.XX
Por ejemplo: XC8 v3.xx
Selecciona la versión instalada y presiona: Next
Si XC8 no aparece aquí, significa que MPLAB X no lo está detectando correctamente y habría que revisar la instalación/configuración del compilador.
Nos pedirá que seleccionemos un programador pickit, para poder programar el microcontrolador desde mplab, en mi caso seleccionamos el pickit2.
Nombre y ubicación del proyecto
Ahora aparecerá Project Settings.
Por ejemplo: Project Name
PIC16F877A_Basico
Puedes seleccionar una ubicación como:
C:\Microchip\Projects\
o cualquier carpeta donde quieras guardar tus proyectos.
Te recomiendo utilizar una estructura organizada:
Microchip/
└── Projects/
├── PIC16F877A_Basico/
├── PIC16F877A_ADC/
├── PIC16F877A_LCD/
└── PIC16F877A_UART/
Deja activada la opción: Set as main project
y pulsa: Finish
Estructura del proyecto
Una vez creado, en el panel Projects de MPLAB X tendrás algo parecido a:
PIC16F877A_Basico
│
├── Header Files
├── Important Files
│ └── nbproject
└── Source Files
La carpeta que nos interesa inicialmente es: Source Files
Crear el archivo principal main.c
Haz clic derecho sobre: Source Files
Selecciona: New → main.c
Si no aparece directamente: New → Other...
y selecciona: C Main File
Pon como nombre: main
MPLAB creará: main.c
Primer programa
Para comprobar que MPLAB X + XC8 + PIC16F877A están funcionando correctamente, podemos comenzar con un programa extremadamente sencillo:
#include <xc.h>
void main(void)
{
while(1)
{
}
}
Este programa no hace todavía ninguna operación visible, pero nos permite comprobar que el proyecto está correctamente configurado.
Configurar los bits de configuración
El PIC16F877A necesita configurar algunos parámetros del hardware, por ejemplo:
- Tipo de oscilador
- Watchdog Timer
- Power-up Timer
- Brown-out Reset
- Low Voltage Programming
Para comenzar podemos utilizar una configuración sencilla.
Por ejemplo:
#include <xc.h>
#pragma config FOSC = HS
#pragma config WDTE = OFF
#pragma config PWRTE = ON
#pragma config BOREN = ON
#pragma config LVP = OFF
#pragma config CPD = OFF
#pragma config WRT = OFF
#pragma config CP = OFF
void main(void)
{
while(1)
{
}
}
Aquí estamos configurando:
FOSC = HS
para utilizar un cristal de alta velocidad.
Por ejemplo, si posteriormente utilizamos:
Cristal de 20 MHz
esta configuración será apropiada.
Compilar el proyecto
Ahora vamos a comprobar que XC8 puede compilar nuestro proyecto.
En MPLAB X selecciona: Run → Build Project
o utiliza: F11
También puedes hacer clic sobre el icono de construcción del proyecto.
En la ventana Output deberías obtener algo similar a:
BUILD SUCCESSFUL
Si aparece:
BUILD SUCCESSFUL
significa que tenemos correctamente configurada la cadena:
MPLAB X IDE
│
▼
XC8
│
▼
PIC16F877A