Está en la página 1de 7

Universidad Tecnológica del Perú

Microcontroladores

Laboratorio Dirigido N°1


Compilación de programas en C usando el MPLABX y
el XC8 de microchip

2018-2
Escuela de Electrónica

Compilación de programas en C usando el MPLABX y


el XC8 de microchip
Objetivo:
“Creación, compilación y simulación de un proyecto en C usando MPLABX”

En este laboratorio se va a determinar los pasos en la construcción de un programa en


lenguaje C para microcontroladores PIC de 8 bits.

I. Pre-laboratorio

a. ¿Cuáles son las diferencias entre una configuración de oscilador LP, XT, HS,
INTOSC y EXTRC?
b. ¿Qué son los registros SFR y GPR?
c. ¿Qué función cumple los registros TRISx, PORTx y LATx?
d. Diferencias más significativas entre un PIC16F87X y PIC18F4550

II. Introducción:

2
Escuela de Electrónica

III. Actividades del laboratorio.


Las actividades propuestas no ayudarán a aprender a:
a. Crear un nuevo proyecto en MPLABX.
b. Crear un nuevo programa en C.
c. Identificar las partes de un programa en C.
d. Simular un programa en C utilizando el MPLAB-SIM.
e. Manejar operadores aritméticos, lógicos, variables, constantes y sentencias
en C.

“Crear y simular un programa en lenguaje C para el microcontrolador


Actividad 1.
PIC18F4550”.
 Abrir el MPLABX
 Crear un nuevo proyecto en C utilizando el compilador XC8 para el
microcontrolador PIC18F4550.
 Crear un nuevo programa principal e identificar sus partes
(Directivas del Preprocesador, funciones, declaraciones y
expresiones).
Use el wizard del MPLABX para crear un proyecto para el PIC18F4550, usando el compilador
XC8 y la opción de “simulator” como herramienta de hardware (Ver Figura 1).

(a) (b)

(c) (d)
Figura 1 Creación de un nuevo proyecto.(a) Nuevo Proyecto (b) seleccionar dispositivo
(c) Seleccionar Herramienta (d)Seleccionar compilador

3
Escuela de Electrónica

Elegir como nombre del proyecto Lab_dir1 y luego en Finish.

En las carpetas del proyecto “Lab_dir1”, crear un nuevo archivo principal (C Main File)
llamado “Lab_dir1_main.c”dentro de la carpeta Source Files.(Ver figura 2)

Figura 2 Creación de un nuevo archivo principal.

En la figura 3, se muestra el programa principal en C, que ha sido creado, utilizando las


plantillas del MPLABX.

4
Escuela de Electrónica

(a) (b)

Figura 3 Programa principal creado automáticamente por el MPLABX. (a) Vista del proyecto
(b) Archivo principal del proyecto Lab_dir_1_main.c

 Agregar la librería <xc.h>


 Agregar los códigos de configuración, considerando un cristal externo de 20MHz y
“HS” en configuración del oscilador y MCLR habilitado.
 Configurar el puerto D, como salida de datos digitales y sacar algunos datos por el
puerto.
 Construir el proyecto.
 En la propiedades del proyecto ( Project Properties > conf > simulator), fijar el valor
de la frecuencia del ciclo de instrucción (Fcyc).

Figura 4 Configurando la frecuencia del ciclo de instrucción en el MPLABX

5
Escuela de Electrónica
 Realizar la simulación con MPLAB-SIM. Verificar la carga de los valores en los
registros relacionados al puerto D.
 Realizar la simulación con Proteus, utilizando el circuito de la figura 5, verificar su
funcionamiento.

Figura 5 Circuito de simulación

 Realizar la programación del microcontrolador.

“Uso de operadores y sentencias en programación para


Actividad 2.
microcontroladores”.

Uso de operadores aritméticos y lógicos, variables, constantes y


sentencias en la programación para microcontroladores

 Diseñar y simular un programa en c, que pueda realizar una cuenta repetitiva de 0 a


9, utilizando el circuito de la figura 5. El valor de la cuenta, debe salir por el puerto
D.
 Diseñar un programa que pueda evaluar siempre el estado de 2 switches para sacar
un valor por el puerto D. El SW0 y SW1, están conectados al PIN RC0 y RC1
respectivamente.(ver tabla 1 y figura 6)

6
Escuela de Electrónica
Tabla 1 Evaluación de los Switches

SW1 SW0 PORTD


0 0 0x35
0 1 0x55
1 0 0xAA
1 1 0xFF

Figura 6 Circuito de simulación

IV. Post-laboratorio.

Diseñar un programa que pueda evaluar siempre el estado de 2 switches que pueda
manipular el funcionamiento de un contador binario de 8 bits por el puerto D. El SW0 y
SW1, están conectados al PIN RC0 y RC1 respectivamente. (ver tabla 2 y figura 6)
Tabla 2 Evaluación de los Switches

SW1 SW0 PORTD


0 0 Cuenta ascendente
0 1 Cuenta descendente
1 0 Pausa en la cuenta
1 1 Pausa en la cuenta

Considerar que el contador binario inicia en 0.

También podría gustarte