Programar consiste básicamente en decirle a tu Arduino y a los actuadores que este controla desde sus puertos, que tienen que hacer (o esperamos que haga, todos los programadores saben que estas son cosas frecuentemente diferentes).
Un programa consigue este objetivo fundamentalmente mediante el procesamiento más o menos complejo de datos y la transmisión de estos datos procesados a los actuadores. Lo que llamamos variables es simplemente una manera de codificar o representar estos datos dentro del programa para facilitar su manipulación de cara a su transmisión hacia o desde los actuadores/sensores.
Desde un punto de vista práctico, podemos considerar las variables como los cajones de un escritorio, cada uno tiene una etiqueta describiendo el contenido y dentro de él se encuentra el valor de la variable (el contenido del cajón). Hay tantos tipos de variables como de datos: números de todo tipo representados de diferentes maneras (enteros, reales, binarios, decimales, hexadecimales, etc.), textos (de un solo o varios caracteres o líneas), matrices (arrays), constantes, etc.
Algunas variables no cambian de valor durante la ejecución del programa. En estos casos podemos añadir la palabra reservada ‘const’ al comienzo de la declaración de la variable. Esto se utiliza típicamente para definir números de pin o constantes matemáticas (pi,e,etc…).
• const int NoPinLed = 12;
• const float pi = 3.1416;
Si tratas de asignar un valor a una constante más adelante en el programa, el compilador te advertirá de este error mediante un mensaje.
El Arduino tiene una serie de palabras reservadas que son constantes:
• INPUT/OUTPUT (Entrada/Salida). Los pins digitales pueden ser configurados de ambos modos: como entrada (INPUT) o como salida (OUTPUT) mediante la función pinMode(): pinMode(13, OUTPUT); //Configura el pin 13 como salida digital.
• INPUT_PULLUP: Reservado como parámetro de la función pinMode() para el uso de resistencias pull-up integradas en el chip Atmega del Arduino.
• LED_BUILTIN: para el uso del Led de serie con el que viene equipado el Arduino (generalmente conectado al pin digital 13).
• TRUE/FALSE (Verdadero/Falso). Para el Arduino True (Verdadero) es cualquier valor que no es 0. False (Falso) es el valor 0.
• HIGH/LOW (Alto/Bajo). Es el valor lógico en una puerta digital: LOW es el valor 0 -0 Voltios- y HIGH es el valor 1 -5 Voltios-
Se trata de constantes usadas directamente en un programa, como por ejemplo 123. Por defecto, estos números se tratan como enteros (int)
En general, se consideran las constantes enteras se formulan en base 10 (es decir, como números decimales). Sin embargo, se pueden utilizar notaciones especiales para expresar números en otras bases.
Del mismo modo que las constantes enteras, las constantes en coma flotante se usan para hacer el código más legible. Estas constantes se reemplazan durante la compilación por el valor asignado en la expresión declarativa.
n = .005;
El circuito propuesto consta de un Arduino, dos pulsadores (suma y resta) y una fila de 6 leds que se van encendiendo uno a uno, o apagándose uno a uno, según el pulsador que se presione, para ello usaremos:
• 1 Arduino uno
• 6 Diodos Leds color rojo
• 6 Resistencia 330Ω
• 1 Protoboard
• 2 Pulsadores
Circuito contador con 2 pulsadores y 6 luces
Diagrama de flujo programa “contador con dos pulsadores y seis leds”