Una variable es la manera que tenemos de guardar valores. Las variables tienen nombre y son de un solo tipo. Estas variables se pueden usar para muchas cosas: comprobaciones, operaciones matemáticas, etc.
Una variable puede ser declarada al inicio del programa, antes del setup(), dentro de otras funciones o dentro de un control de flujo.
Los nombres de variables pueden tener letras, números y el símbolo ’_’. Deben empezar por una letra (pueden empezar por ’_ ’ pero no es recomendable pues es el criterio que usan las rutinas de la biblioteca). Pueden llevar mayúsculas y minúsculas. Se distingue entre mayúsculas y minúsculas. La costumbre es que las variables van en minúscula y las constantes en mayúscula. Las palabras reservadas if, else,etc . . . no pueden usarse como nombres de variables.
Para declarar una variable necesitamos ponerle un identificador o nombre a la variable y también tenemos que asignarle un tipo de dato, ósea decidir qué tipo de dato vamos a almacenar dentro de esa variable, debemos definir si el dato que necesitamos almacenar en esa variable es un número, un texto, o un estado lógico.
En este ejemplo tenemos una variable con el nombre temperatura, que guarda un valor o dato numérico que son los grados, y por eso usamos un tipo de dato int, que es una palabra reservada del sistema y que se usa para declarar variables que guardan números enteros ósea sin decimales.
Recordamos, que el tipo de dato al ser un código del lenguaje de Arduino es una palabra reservada por el sistema y por eso nunca la podemos usar como nombre de variable, además cuando la escribimos en nuestro programa de Arduino la cambia de color para así avisarnos de que es una palabra reservada.
Todas las variables deben ser declaradas antes de su uso. Las declaraciones deben aparecer al principio de cada función o bloque de sentencias. Al declarar una variable se debe indicar primero el tipo de variable y luego su nombre, opcionalmente se le puede dar un valor, lo que se llama inicializar la variable.
Una variable puede ser declarada al inicio del programa antes de la parte de configuración setup(), a nivel local dentro de las funciones, y, a veces, dentro de un bloque, como para los bucles del tipo if.. for.., etc. En función del lugar de declaración de la variable así se determinará el ámbito de aplicación, o la capacidad de ciertas partes de un programa para hacer uso de ella.
Una variable global es aquella que puede ser vista y utilizada por cualquier función y estamento de un programa. Esta variable se declara al comienzo del programa, antes de setup().
Recordad que, al declarar una variable global, está ocupa un espacio en memoria permanente en la zona de static data y el abuso de variables globales supone un uso ineficiente de la memoria.
Una variable local es aquella que se define dentro de una función o como parte de un bucle. Sólo es visible y sólo puede utilizarse dentro de la función en la que se declaró. Por lo tanto, es posible tener dos o más variables del mismo nombre en diferentes partes del mismo programa que pueden contener valores diferentes, pero no es una práctica aconsejable porque complica la lectura de código.
Los datos que guardamos en las variables pueden ser de diferentes tipos, Siempre que elegimos un tipo de dato debemos escoger el que menos tamaño necesite y que cubra nuestras necesidades, ya que ocuparán espacio en la memoria de nuestra placa y podría darse el caso de que nuestro programa requiera más memoria de la disponible.
Arduino permite manejar los siguientes tipos de datos: