Está en la página 1de 2

1

Universidad Galileo Guatemala 08 de Septiembre del 2014


Facultad: FISICC Alumno: Milton Godinez
Curso: Microprocesadores Carnet: 1200 2306
Seccin: AN Hora de Laboratorio: 19:50 a 08:40
Auxiliar: Carlos Aguilar Da de Laboratorio: Lunes

L


Objetivos:
Que el estudiante aprenda el procedimiento necesario para controlar los puertos
paralelos de una tarjeta de evaluacin del microcontrolador LPC1115 utilizando el IDE
Resumen:
Segn la tabla que se nos entreg indicando el puerto y el pin para cada una de las
posiciones del joystick y cada uno de los colores del led RGB , se configur el cdigo para que en
cada diferente posicin del joystick se encendiera el led de un color diferente.
Esto se realiz mediante el cdigo LPC_GPIO2->DATA, ya que al escribir en la parte data se
puede encender o apagar el led. Y mediante el cdigo LPC_GPIO3->DIR se configura el modo del
pin.
Teora:
La funcin MASK() nos sirve para traducir el numero decimal a binario y realiza un AND
con la configuracin actual de puerto, para modificar nicamente el pin que deseamos.
Otra opcin si no se quiere utilizar la funcin MASK() es asignar los nmeros directamente
en Hexadecimal ya que es lo mismo que la funcin.
El microcontrolador LPC1115/303 cuenta con 4 puertos paralelos bidireccionales de
propsito general: Los puertos 0, 1, y 2 (12 pines cada uno), y el puerto 3 (6 pines).
Cada puerto tiene un registro de datos asociado (GPIO2DATA por ejemplo). Si se escribe a
este registro, se escribe a los bits configurados como salidas, y estos estados aparecern en los
pines asociados. Los bits configurados como entradas tienen el estado lgico de los pines
asociados.
Cada puerto tiene tambin un registro de direccin de datos (Data Direction Register o
GPIOnDIR), que se utiliza para configurar los bits del puerto como entradas o salidas
individualmente (GPIO2DIR por ejemplo). Si se desea configurar un bit del puerto como salida, es
necesario escribir un 1 en el bit correspondiente en el registro GPIOnDIR. Para entradas se utiliza
0.
Laboratorio # 02 Puertos Paralelos en C
2

Datos Prcticos:
Se creo el cdigo mediant el el cual se reconociera que el usuario movi el joystick el
alguna diversin y se le asign un color diferente a cada posicin.
Asignacin de constantes:
#define MASK(x) (1UL << (x))
#define p2 LPC_GPIO2->DATA
#define p3 LPC_GPIO3->DATA
#define p1 LPC_GPIO1->DATA

#define sen0 0
#define sen1 1
#define sen2 2
#define sen3 3
#define sen4 4
#define rojo 9
#define verde 10
#define azul 2

Cdigo asignacin de un color a una posicin:

if(!(p2 & MASK(sen1))){
p1 &= ~(MASK(rojo));
//p1 &= (MASK(verde));
//p1 &= ~(MASK(azul);
//p1 |= (MASK(rojo));
p1 |= (MASK(verde));
p1 |= (MASK(azul));
}

Cdigo para apagar todos los colores del LED:
p1 &= (MASK(rojo));
p1 &= (MASK(verde));
p1 &= (MASK(azul));
Conclusiones:
Siempre se debe utilizar un pulso de reloj
Se debe tener cuidado de encender nicamente los pines necesarios
Los LED tienen la lgica invertida para encenderlos y apagarlos
Bibliografa:
Manual del Microcontrolador LPC1115

También podría gustarte