Variables
Una variable es una palabra que representa un espacio de memoria que fue reservado expresamente durante su declaracion asignándole un tipo de dato. Al mismo tiempo o posteriormente se puede inicializar con un valor dicha variable.
tipo nombre [= valor];
Contenido
Alcance o ámbito
Las variables en el lenguaje de programación C++, que usa Arduino, tienen una propiedad llamada ámbito. Esto está en contraste con las primeras versiones de lenguajes de programación como BASIC, donde todas las variable siempre son del tipo global.
- Una variable global es aquella que puede ser vista por cada función en un boceto. En el entorno Arduino, cualquier variable declarada fuera de una función (por ejemplo, setup(), loop() o función de usuario), es una variable global.
- Las variables locales solo son visibles para la función en la que están declaradas.
Cuando un boceto comienza a hacerse más grande y complejo, las variables locales son una forma útil de asegurar que cada función tenga acceso a sus propias variables. Esto evita errores de programación cuando una función modifica inadvertidamente variables usadas por otra función.
También es útil a veces declarar e inicializar una variable dentro de un bucle for. Esto crea una variable a la que solo se puede acceder desde dentro de las llaves del bucle for.
Constantes
Tipos de dato
Estos son los tipos de datos que usa Arduino.
Tipo | Ocupa | Rango |
---|---|---|
char | 1 byte (8 bits) | -128 a 127 |
byte | 1 byte (8 bits) | 0 a 255 |
int | 2 byte (16 bits) | -32,768 a 32,767 |
unsigned int o word | 2 byte (16 bits) | 0 a 65,535 |
long | 4 byte (32 bits) | -2,147,483,648 a 2,147,483,647 |
unsigned long | 4 byte (32 bits) | 0 a 4,294,967,295 |
float | 4 byte (32 bits) | -3.4E38 a 3.4E38 |
Numéricos
- char
- byte
- int
- unsigned int
- long
- unsigned long
- float
- double - solo MEGA
- word
Fecha y hora
- time_t - TimeLib.h
- tmElements_t - TimeLib.h
Nota: Si usas la librería TimeLib.h puedes usar los tipos: time_t y tmElements_t
Caracteres
Otros
Utilidades
Calificadores
En ocaciones es necesario calificar una variable de modo que le indicas en que tipo de memoria deberá ser almacenada: flash, SRAM o EEPROM.
Matrices
Son un tipo especial de variable múltiple. Puede ser uni o multidimencional.
tipo matriz[] = {valor1, valor2...}; tipo matriz[][n] = {valor11, valor12...},{valor21, valor22...}...;
Nota: Si la matriz en bidimencional no puede dejar de expresar el segundo vector
Palabras reservadas
Estas son palabra reservadas que tiene un significado especial y no pueden ser usadas como nombres de variable:
- true / false
- HIGH / LOW
- INPUT / OUTPUT / INPUT_PULLUP
- LED_BUILTIN
- PI
- MSBFIRST / LSBFIRST
- RISING / FALLING
Nota: En el IDE veras que estas palabras se pintan de color azul si están bien escritas.