XRL Tech Corner

Tutoriales online de programación, CMS, Raspberry y artículos sobre tecnología. La web de referencia para estudiantes universitarios de informática y aficionados a la tecnología.

Usando Raspberry PI GPIO con Java

En este artículo vamos a continuar con otro tutorial de introducción a Raspberry PI. En este caso vamos a preparar un proyecto para Raspberry PI Zero W utilizando una librería Java denominada pi4j.

Sabemos que podemos controlar el GPIO de la Raspberry PI con C y Python. Precisamente pi4j nace a partir de la librería nativa wiringPi, que es una librería popular escrita en C.

 java raspberry

Instalación de PI4J

Para instalar esta librería abriremos un ssh contra la Raspberry PI y en la consola introduciremos:

curl -s get.pi4j.com | sudo bash

Este comando descargará y ejecutará un script que instalará la librería pi4j en el directorio /opt/pi4j

 Para comprobar que la instalación es correcta vamos a probar uno de los ejemplos, un sencillo montaje con un LED y una resistencia, para ello nos situamos en el directorio /opt/pi4j/examples y ejecutamos ./build ControlGpioExample.java para que compile uno de los ejemplos que vienen por defecto.

Para ejecutarlo introduciremos ./run ControlGpioExample y veremos como se ilumina el LED pasando por diferentes estados. Primero encendido durante 5 segundos, luego apagado durante 5 segundos, luego encendido 5 segundos más, luego apagado 5 segundos y luego encendido 1 segundo, y por último se finaliza el programa.

Para este ejemplo hay que disponer de un LED, una resistencia, un breadboard, los cables y una Raspberry PI. Se usa el pin 1, que traducido al formato visual de los pines es el pin número 6 (contando desde arriba a la izquierda). También usa el pin de tierra, que corresponde al pin número 3 (contando desde arriba a la izquierda).

Podéis ver el montaje en la foto siguiente:

raspberry pi w led

 

Como los cables tienen el conector de color negro, parece que los cables estan conectados en los pines inferiores, pero es sólo un efecto óptico. Realmente estan conectados en los pines de la fila superior. 

Para crear un ejemplo en java, creamos el fichero Test.java y importamos las clases:

import com.pi4j.io.gpio.*;

Luego en el método main creamos una instancia del controlador gpio.

final GpioController gpio = GpioFactory.getInstance();

A continuación antes de usar un pin tenemos que provisionarlo y especificar si es de entrada o de salida.

GpioPinDigitalOutput myLed = gpio.provisionDigitalOutputPin(RaspiPin.GPIO_04, "Mi LED", PinState.LOW);

De este modo provisionamos el pin 4, le ponemos una etiqueta, y lo inicializamos al estado LOW.

Al finalizar el método main, podemos liberar los recursos del interfaz gpio con :

  gpio.shutdown();

 

En estos enlaces podéis comprar los mejores libros sobre proyectos Raspberry.

 

Valora este artículo del blog:
KeepCoding Bootcamp
Novedades ES6

Artículos relacionados

 

Comentarios

No hay comentarios por el momento. Se el primero en enviar un comentario.
¿Ya està registrado? Ingresa Aquí
Invitado
Lunes, 18 Diciembre 2017
Si desea registrarse, por favor rellene los campos de nombre de usuario y nombre.

Imagen Captcha