Creación de un proyecto utilizando MPLAB X y XC8 - Contador binario Ing Sebastián Gómez V. [email protected]INTRODUCCIÓN El presente documento tutorial pretende explicarle a los aprendices cómo crear un proyecto utilizando el entorno de programación MPLAB X y el compilador XC8 como herramienta de programación 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 modificación del vector de programa para el bootloader, sigue con la explicación de la compilación 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. Creación 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 programación se inicia se muestra la siguiente ventana:
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Creación de un proyecto utilizando MPLAB X y XC8 - Contador binario Ing Sebastián Gómez V.
El presente documento tutorial pretende explicarle a los aprendices cómo crear un proyecto utilizando el entorno de programación MPLAB X y el compilador XC8 como herramienta de programación 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 modificación del vector de programa para el bootloader, sigue con la explicación de la compilación 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.
Creación 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 programación se inicia se muestra la siguiente ventana:
Creación de un proyecto utilizando MPLAB X y XC8 - Contador binario Ing Sebastián Gómez V.
En este ambiente de programación 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 continuación:
Paso 1
Paso 2
Paso 3
Creación de un proyecto utilizando MPLAB X y XC8 - Contador binario Ing Sebastián Gómez V.
En el siguiente pantallazo se muestra la información de la ubicación del proyecto a crear, y se le debe ingresar un nombre, luego se pulsa Finish:
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...
En la ventana que se abre a continuación se le da un nombre al archivo que va a contener el código del programa, como se muestra a continuación:
Paso 10
Paso 11
Paso 12
Paso 13
Paso 14
Creación de un proyecto utilizando MPLAB X y XC8 - Contador binario Ing Sebastián Gómez V.
Se abre una página en blanco. Para realizar un programa de prueba, se va a digitar el siguiente código:
//declaración de librerías #include <xc.h> //Bits de configuración 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 // Configuración del cristal: 20Mhz //Declaración de variables globales int contador; //declaración de funciones void retardo(int tiempo); //Programa void retardo (int tiempo) {//Función que realiza el retardo en milisegundos. Esta función para todo el programa //Declaración de variables locales: int i; //Ciclo de repetición 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; //Función principal, siempre se ejecuta al iniciar el programa. //Configuración 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
Paso 15
Paso 16
Creación de un proyecto utilizando MPLAB X y XC8 - Contador binario Ing Sebastián Gómez V.
/* * El while es un ciclo de repetición que ejecuta las instrucciones que estan entre { } * mientras que la condición sea verdadera, que en este caso * En este caso, el while está como un bucle infinito, porque tiene una condición 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; //envía 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 continuación:
Se abrirá una ventana en la que se puede configurar algunas características del proyecto, en este caso se debe ir a la opción XC8 linker / Additional Options /Codeoffset e ingresar el dato 0x1800.
Paso 17: Abrir propiedades del proyecto
Creación de un proyecto utilizando MPLAB X y XC8 - Contador binario Ing Sebastián Gómez V.
Para la simulación y pruebas de un programa en MPLAB X se debe tener en cuenta que cuenta con unas herramientas que sirven para realizar diagnóstico, 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 podrán ingresar los nombres de las variables:
Creación de un proyecto utilizando MPLAB X y XC8 - Contador binario Ing Sebastián Gómez V.
En el campo <Enter new watch>, se da doble clic y en este caso se va a digitar "contador", como se muestra a continuación:
Si se desea agregar campos de visualización de datos, basta con dar clic derecho sobre la barra de categorías y seleccionar las opciones:
Después 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. Botón PROGRAM (negro) 2. Botón RESET(rojo) 3. Botón 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 aplicación:
Creación de un proyecto utilizando MPLAB X y XC8 - Contador binario Ing Sebastián Gómez V.