Programando GPIO en JavaScript

En el post anterior verifiqué que el acceso a GPIO funciona, ahora toca escribir el primer programa en JavaScript para acceder al mundo exterior desde la Raspberry Pi.

Lo primero que voy a hacer es crear una estructura de directorios para mantener los distintos archivos que conforman el proyecto. En el directorio raíz del usuario ‘pi’ voy a crear un directorio labs donde voy a colocar los distintos componentes de las aplicaciones. Dentro de este directorio, voy a crear un directorio, gpiojs, donde irán los componentes de este proyecto.

En primer lugar creo un fichero de dependencias (package.json) y lo sitúo en la raíz del proyecto. Los contenidos del fichero son:

{
   "name": "led",
   "version": "0.0.1",
   "description": "Basic test of GPIO",
   "dependencies": {
      "rpio": "^0.9.11"
   }
}

A continuación lanzo el comando para la instalación de las dependencias:

Imagen2

Por último, escribo un pequeño programa en JavaScript que va a probar la comunicación a través de GPIO:

//|   led_1.js
//|   Primer programa de acceso a GPIO usando rpio.

var rpio = require('rpio');

// Inicializar los pines a utilizar.

var red     = 11;
var green   = 12;

// Abrir los pines para salida estableciendo el nivel de salida bajo.

rpio.open(red, rpio.OUTPUT, rpio.LOW);
rpio.open(green, rpio.OUTPUT, rpio.LOW);

// Bucle principal.

for (var i = 0; i < 5; i++) {
   rpio.write(red, rpio.HIGH);         // Encender LED rojo
   rpio.sleep(1);
   rpio.write(red, rpio.LOW);          // Apagar LED rojo
   rpio.msleep(500);
   rpio.write(green, rpio.HIGH);       // Encender LED verde
   rpio.sleep(1);
   rpio.write(green, rpio.LOW);        // Apagar led verde
   rpio.msleep(500);
}

Ya sólo queda lanzarlo y ver el resultado:

A partir de ahora, iré poniendo todo el código en GitHub.

Anuncios

Autor: dotorqantico

Químico y escéptico, me gusta la ciencia, la lectura, el golf y el ciclismo.

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s