Entrar en el mundo de la programación de microcontroladores es ahora mucho más fácil y económico gracias a la existencia de Arduino.
El Arduino Software (IDE) es muy fácil de instalar, configurar y usar. La documentación y los “Getting Started” disponibles en linea son suficientes para estar cargando a la tarjeta de desarrollo y probando el primer programa (Sketch) en cuestión de un par horas.
Esta sencillez con la cual suceden las cosas en el Arduino Software resulta muy convenientes para las personas que se inician en la electrónica y la programación de microcontroladores, sin embargo, para aquellos que buscan desarrollar sistemas embebidos de manera profesional, es mas bien una limitante.
De entrada el lenguaje que se usa dentro del Arduino Software parece C++ (y lo es), pero de alguna forma funciona distinto. Este software tampoco ofrece la posibilidad de depurar los programas de forma “real”, es decir, observando el estado de las variables en determinados momentos, siguiendo la ejecución del programa linea tras linea, implementando breakpoints, etc.
Una solución, que podría parecer no tan mala es enviar “traces” a la computadora por el puerto serial. Estas traces son instrucciones que el usuario escribe en el programa, que contienen un mensaje, que informa, por ejemplo, que el programa llegó a cierto punto, o que el valor de la variable es tal, etc.
Buscando en Internet la posibilidad de desarrollar proyectos para las tarjetas de Arduino usando Eclipse como IDE, encontré los siguientes dos excelentes artículos escritos por Jan Dolinay.
- https://www.codeproject.com/Articles/1003347/Creating-Arduino-programs-in-Eclipse
- https://www.codeproject.com/Articles/1037057/Debugger-for-Arduino
El primer artículo documenta la forma de configurar Eclipse para poder hacer proyectos Arduino en C++. El segundo artículo muestra la forma de configurar Eclipse y modificar el programa, para poder usar el debugger de GCC (GDB) y depurar los programas. Los artículos están escritos como si el usuario tuviera Windows como sistema operativo, sin embargo las configuraciones son igualmente validas para usuarios de Linux (comprobado).
Ahora sí, ¡a programar sistemas embebidos de manera profesional usando eclipse y la plataforma Arduino!