Nueva dirección: litox.entramado.net

Diseño modular en Arduino

Una buena plataforma para comenzar con diseño electrónico modular es Arduino, aunque su IDE sea mejorable en este sentido no es difícil empezar a trabajar con módulos y librerías en nuestros proyectos, vamos a empezar por usar librerías creadas por terceras personas, lo que se suele llamar Contribuido:

En primer lugar vamos a nuestro sketchbook de Arduino, una carpeta que en Ubuntu suele estar en tu home, si no está aún creada, hacemos una nueva carpeta que se llame libraries, en esta carpeta colocaremos los directorios de cada librería.

Una vez pongamos las librerías que queramos ahí ya podremos acceder a ellas desde el IDE de Arduino, en él veremos algo como esto:

Libreria Contribuido
Ya tenemos por donde empezar, es muy útil en diseño electrónico utilizar librerías de componentes electrónicos que se comunican con el procesador, estas librerías proveen de un acceso sencillo a los componentes, consiguiendo de esta forma una programación orientada a componentes.

Lo siguiente que vamos a hacer es dividir nuestro programa en módulos, aunque Arduino utiliza su propio lenguaje de programación podemos usarlo como si fuera C o C++, por esto podemos utilizar archivos “.cpp” para añadir código y archivos “.h” para enlazar este código con el archivo principal que será el “.ino”.

Vamos a la carpeta de nuestro proyecto donde podremos ver nuestro archivo principal “.ino”, vamos a crear un nuevo módulo que vamos a llamar “datos”, por lo tanto creamos dos archivos, “datos.cpp” y “datos.h”, en el primero pondremos el código las funciones que vamos a crear y en el segundo las cabeceras de las funciones creadas anteriormente, sólo si vamos a hacer uso de ellas en el exterior del módulo.
Nos tenemos que asegurar que el archivo de cabeceras no se incluya en el proyecto más de una vez, para eso usamos:
#ifndef datos_h
#define datos_h
Al principio del archivo “.h” y:
#endif
Al final.

Por ultimo vamos a nuestro programa principal, si reiniciamos Arduino IDE ya nos abrirá los archivos que hemos creado en diferentes pestañas. Ahora los incluimos en nuestro programa principal usando:

#include "datos.h"
Y ya podremos acceder a los módulos que hemos creado.
Un consejo, si utilizáis librerías dentro de módulos y no están muy bien hechas os dará error, para solucionarlo lo que hago es incluirlas también en el programa principal, pero tenéis que aseguraros de que las librerías tienen un #ifndef como se ha explicado anteriormente.
Para más información sobre como hacer una librería para Arduino visitad el siguiente enlace:
Library Tutorial
Esto es todo por hoy, espero continuar con la serie sobre Arduino, tengo muchas cosas que publicar.

3 comentarios

  1. arduino! veo que te has ido al lado oscuro! y encima por lo que veo en el IDE tienes una arduino mega, en el lado oscuro y a lo grande! jaja me parece una muy buena plataforma para iniciarse, aunque solo sea eso, para iniciarse ;) espero ver más entradas sobre electrónica y micros!! incluso, ya que estudias lo que estudias… algo de control embebido!! que se note de donde vienes!

    Un saludo

    4 de enero de 2013 en 16:59

  2. litox9

    ¡Por supuesto! El Arduino lo necesitaba sí o sí para hacer informática industrial este año y he aprovechado y he empezado un proyecto que tenia en mente hace tiempo, poco a poco voy a ir mostrándolo ¡esto solo es la introducción! Lo de el control embebido (que palabra más fea) no es mala idea, no hay mucho de control en la escena open source, puedo empezar por alguna librería PID y tal…lo pensaré.
    ¡Saludos!

    4 de enero de 2013 en 17:09

  3. Pingback: Diseño modular en Arduino « La Pizarra de Litox | InternetdelasCosas | Scoop.it

Seguir

Recibe cada nueva publicación en tu buzón de correo electrónico.