Está en la página 1de 8

Práctica: JOYSTICK (4 direcciones).

Introducción.

MPLAB es un editor IDE gratuito, destinado a productos de la marca Microchip. Este editor
es modular, permite seleccionar los distintos microcontroladores soportados, además de
permitir la grabación de estos circuitos integrados directamente al programador.

Es un programa que corre bajo Windows, Mac OS y Linux. Presenta las clásicas barras de
programa, de menú, de herramientas de estado, etc. El ambiente MPLAB® posee editor de
texto, compilador y simulación (no en tiempo real). Para comenzar un programa desde cero
para luego grabarlo al μC en MPLAB® v7.XX los pasos a seguir son:

1. Crear un nuevo archivo con extensión .ASM y nombre cualquiera

2. Crear un Proyecto nuevo eligiendo un nombre y ubicación

3. Agregar el archivo .ASM como un SOURCE FILE

4. Elegir el microcontrolador a utilizar desde SELECT DEVICE del menú CONFIGURE

Una vez realizado esto, se está en condiciones de empezar a escribir el programa


respetando las directivas necesarias y la sintaxis para luego compilarlo y grabarlo en el PIC.

Una de las mejores características de este lenguaje es que no está atado bajo ningún
hardware o sistema en particular.

El lenguaje C es ubicado como un lenguaje de programación de nivel medio, que combina


los elementos de un lenguaje de alto nivel, con la eficiencia de un lenguaje en ensamblador.
Objetivo.

En esta práctica realizaremos la programación de un robot rastreador por medio de un


Joystick en lenguaje C. Esto quiere decir que el robot irá en 4 direcciones (arriba, izquierda,
derecha, abajo). Por lo que quedan de la siguiente forma:

RA0 = Arriba

RA1 = Derecha

RA2 = Izquierda

RA3 = Abajo

Desarrollo.

1. Creamos un nuevo proyecto pero en C. Para esto debimos de instalar previamente


XC8. Para poder realizar proyectos en c.
2. Ya creado el proyecto pasamos a traducir el programa anteriormente hecho en
ensamblador pero ahora en C. por lo que el código quedó de la siguiente manera.

3. En estas líneas de código se hace lo siguiente:

Con el #include lo que se hace es importar todas las librerías correspondientes para
poder utilizarlas en el programa y así programar.
Con #pragma se configura el funcionamiento interno del microcontrolador
PIC16F84A.

En TRISA lo que hacemos es poner su estado a entrada y en TRISB poner el estado


en salida.
COMPROBACIÓN DEL PROGRAMA.
Realizaremos la comprobación con las diferentes entradas al programa.

Hexadecimal Posición
0E Derecha
0F Recto
07 Izquierda
06 Abajo

ROBOT VAYA HACIA ARRIBA.

RA0 = 1 RA1 = 0 RA2 = 0 RA3 = 0

Observando los watches podemos observar el valor de PORTB en hexadecimal:

0F= el robot va a hacia arriba.


La línea verde también nos indica que efectivamente va para esa dirección.
ROBOT VAYA HACIA DERECHA.

RA0 = 0 RA1 = 1 RA2 = 0 RA3 = 0

Observando los watches podemos observar el valor de PORTB en hexadecimal:

0E= el robot va a hacia derecha.


La línea verde también nos indica que efectivamente va para esa dirección.
ROBOT VAYA HACIA IZQUIERDA.

RA0 = 0 RA1 = 0 RA2 = 1 RA3 = 0

Observando los watches podemos observar el valor de PORTB en hexadecimal:


07= el robot va a hacia izquierda.

La línea verde también nos indica que efectivamente va para esa dirección.
ROBOT VAYA HACIA ABAJO.

RA0 = 0 RA1 = 0 RA2 = 0 RA3 = 1

Observando los watches podemos observar el valor de PORTB en hexadecimal:


06= el robot va a hacia abajo.

La línea verde también nos indica que efectivamente va para esa dirección.

Conclusión.

Tabla de verdad.

RA0 RA1 RA2 RA3 DIRECCIÓN


1 0 0 0 Arriba
0 1 0 0 Derecha
0 0 1 0 Izquierda
0 0 0 1 Abajo

Obtuvimos los siguientes resultados y pudimos observar las direcciones en que va el


robot.

Esta práctica fue algo tardada por el hecho de que tenía que comprender bien el
funcionamiento y todo eso. Pero una vez entendido todo fue más sencillo programar el
algoritmo para que el robot pudiera girar.

También podría gustarte