Una vez que tenemos el entorno instalado, el siguiente paso es empezar a programar.
El lenguaje en el que se programa Arduino es C++. Podemos elegir entre hacer código C o C++, todo dependerá de si usamos o no objetos. La gran mayoría del código y de las librerías ya desarrolladas está escrito en C++, pues aunque lleva un sobrecoste en cuanto al peso del código generado, compensa la claridad que obtenemos.
Todo sketch (páquete formado por todo el código que luego programaremos en la placa) de arduino se limita a completar dos funciones:
void setup()
{}
y
void loop()
{}
El primer método contendrá todo el código necesario para inicializar nuestro entorno: por ejemplo diremos que pines utilizamos de entrada y cuales de salida, a qué velocidad deseamos comunicarnos con el puerto serie, … etc. Esta función sólo se ejecutará una vez después de haber encendido la placa o tras resetearla.
El método loop()
contiene el código que se ejecutará una y otra vez de forma repetitiva hasta el fin de los tiempos con una frecuencia que está limitada por el reloj al que funciona nuestra placa.
Cuando decidimos compilar nuestro programa, el entorno arduino insertará nuestro código en una plantilla parecida a esta:
void main ()
{
setup();
while(1){
loop();
}
}
y compilará todo incluidas las librerías que usemos
Como ya hemos mencionado antes es enorme la cantidad de código que ya se ha desarrollado para Arduino. Gran parte de el está formado por código que permite comunicar con diferentes protocolos, o que conecta con diferentes sensores o que permite manejar determinados dispositivos. Esté código se integra en lo que denominamos librerias. Así tenemos una librería que permite conectar con dispositivos I2C o manejar displays LCD.
El propio entorno Arduino trae incluídas una gran cantidad de librerías. En el caso que quisiéramos añadir alguna más basta con incluirla en la carpeta Libraryde nuestra carpeta de usuario (podemos ver cual es la carpeta de usuario viendo nuestra configuración en la opción Preferences
) .
Para facilitar la utilización de las librerías más usuales y recordar la sintaxis de C++ disponemos de muchos recursos en internet, entre ellos este chuletario (Arduino cheat sheet) o este Libro de Progración de Arduino (Arduino programing notebook).
También existen webs donde se incluyen a modo de recetario miles de ejemplos como freeduino o arduino Playground
Más sobre el tema: Introducción a arduino, ¿Qué es arduino?, Introducción al entorno, Escribiendo código
Javacasm