arduinoEmpezando con el arduino

Observaciones

¿Qué es Arduino?

Arduino es una plataforma electrónica de código abierto basada en hardware y software fáciles de usar.

¿Por qué usar Arduino?

  • Barato. También puedes comprar clones que son incluso más baratos.
  • Fácil de usar y comenzar con
  • Comunidad enorme
  • Completamente Open Source

Versiones

Versión Fecha de lanzamiento
1.0.0 2016-05-08

Mínimo

Aquí está el boceto de Arduino 'mínimo'. Esto se puede cargar en el IDE de Arduino seleccionando File > Examples > 01. Basics > Bare Minimum .

void setup() {
  // put your setup code here, to run once
}

void loop() {
  // put your main code here, to run repeatedly
}
 

El código en la función de setup() se ejecutará una vez cuando se inicie el programa. Esto es útil para configurar pines de E / S, inicializar variables, etc. El código en la función loop() se ejecutará repetidamente hasta que Arduino esté apagado o se cargue un nuevo programa. Efectivamente, el código anterior se ve así en la biblioteca de tiempo de ejecución de Arduino:

setup();
while(1) {
  loop();
}
 

A diferencia de los programas que se ejecutan en su computadora, el código Arduino nunca puede cerrarse. Esto se debe a que el microcontrolador solo tiene un programa cargado. Si este programa se cierra, no hay nada que le diga al microcontrolador qué hacer.

Parpadeo

Aquí hay un breve ejemplo que muestra las funciones setup() y loop() . Esto se puede cargar en el IDE de Arduino seleccionando File > Examples > 01. Basics > Blink . ( Nota: la mayoría de las placas Arduino ya tienen un LED conectado al pin 13, pero es posible que necesite agregar un LED externo para ver los efectos de este boceto).

// the setup function runs once when you press reset or power the board
void setup() {
  // initialize digital pin 13 as an output.
  pinMode(13, OUTPUT);
}

// the loop function runs over and over again forever
void loop() {
  digitalWrite(13, HIGH);   // turn the LED on (HIGH is the voltage level)
  delay(1000);              // wait for a second
  digitalWrite(13, LOW);    // turn the LED off by making the voltage LOW
  delay(1000);              // wait for a second
}
 

El fragmento anterior:

  1. Define la función setup() . La función setup() se llama primero al ejecutarse en cada programa Arduino.

    1. Establece el pin 13 como salida.

      Sin esto, podría configurarse en una entrada, lo que haría que el LED no funcionara; sin embargo, una vez que se establece como salida, seguirá siendo así, por lo que solo debe hacerse una vez que se inicie el programa.

  2. Define la función loop() . La función loop() se llama repetidamente mientras el programa se está ejecutando.

    1. digitalWrite(13, HIGH); enciende el LED.
    2. delay(1000); Espera un segundo (1000 milisegundos).
    3. digitalWrite(13, LOW); apaga el LED.
    4. delay(1000); Espera un segundo (1000 milisegundos).

Debido a que loop() se ejecuta repetidamente durante el tiempo que se ejecuta el programa, el LED se encenderá y apagará con un período de 2 segundos (1 segundo encendido, 1 segundo apagado). Este ejemplo se basa en el Arduino Uno y cualquier otra placa que ya tenga un LED conectado al Pin 13. Si la placa que se está utilizando no tiene un LED integrado en ese pin, se puede conectar una externa.

Más información sobre el tiempo (por ejemplo, retrasos y tiempo de medición): Gestión del tiempo

Configuración por primera vez

Software necesario: Arduino IDE

Arduino IDE

Preparar

La mayoría de las tarjetas compatibles con Arduino tienen un puerto USB y vienen con un cable USB. Conecte el Arduino con el cable USB e inicie el IDE de Arduino.

El IDE de Arduino comenzará con un nuevo boceto, generalmente con las funciones de setup() emtpy setup() y loop() . Esto es suficiente para subir a un tablero Arduino, pero no hará nada en absoluto. El boceto de ejemplo "Blink" funciona como una prueba simple cuando se usa por primera vez una placa Arduino. Vaya a Archivo → Ejemplos → 01. Básicas → Parpadeo. Esto abrirá una nueva ventana con el boceto de Blink.

Seleccione su tablero. Vaya a Herramientas → Tablero → [nombre de su tablero Arduino].

Herramientas, tablero

Seleccione el puerto COM para su tablero. La mayoría de las tarjetas compatibles con Aurduino crearán un puerto COM falso, que se utiliza para la comunicación en serie (depuración) y para la programación de la tarjeta. COM 1 es por lo general ya presente, y su junta directiva creará uno nuevo, por ejemplo COM 4. Seleccione esto desde Herramientas → → Puerto COM 4 (u otro número de COM).

Algunas placas tienen configuraciones adicionales en el menú Herramientas, como la velocidad del reloj. Estos varían de una placa a otra, pero generalmente ya se ha seleccionado un conjunto aceptable de valores predeterminados.

Subir

Ya estás listo para subir Blink. Haga clic en el botón Cargar o seleccione Boceto → Cargar. El boceto se compilará, luego, cárguelo en su tablero Arduino. Si todo funcionó, el LED de a bordo comenzará a parpadear cada segundo.

Subir

Monitor de serie

En Arduino IDE ypu hava un monitor serie. Para abrirlo use el botón monitor serie en el lado derecho de la ventana.

Monitor de serie

Asegúrese de que el código esté cargado antes de abrir el monitor. ¡La carga y el monitor no se ejecutarán al mismo tiempo!

LED - Con control de botón

También puede usar este código para configurar un LED con un interruptor de botón con una resistencia de extracción, esto podría ser preferiblemente con el siguiente paso después de configurar el controlador de LED inicial

int buttonState = 0; // variable for reading the pushbutton status

void setup()
{
    // initialize the LED pin as an output:
    pinMode(13, OUTPUT); // You can set it just using its number
    // initialize the pushbutton pin as an input:
    pinMode(2, INPUT);
}

void loop()
{
    // read the state of the pushbutton value:
    buttonState = DigitalRead(2);

    // check if the pushbutton is pressed.
    // If it's not, the buttonState is HIGH : if (buttonState == HIGH)
    {
        // turn LED off:
        digitalWrite(13, LOW);
    }
    else
    {
        // turn LED off:
        digitalWrite(13, HIGH);
    }
}