Arduino
Arduino
MICROCONTROLADOR
Un microcontrolador es un pequeño circuito integrado que actúa como un computador en miniatura.
Está diseñado para ejecutar tareas específicas dentro de dispositivos electrónicos. A diferencia de un
microprocesador (como los que se encuentran en computadoras), un microcontrolador incluye todos los
componentes necesarios para operar de manera independiente,
1.- ARDUINO
Arduino es una plataforma de hardware libre basada en una placa con un microcontrolador y un entorno
de desarrollo (IDE) que facilita la programación del mismo. Es utilizada para crear proyectos de
electrónica interactiva, permitiendo controlar sensores, motores, luces, pantallas, entre otros
componentes. Las placas Arduino pueden programarse para realizar una variedad de tareas mediante el
uso de un lenguaje de programación basado en C/C++.
Automatización de procesos.
Proyectos de robótica.
Control de dispositivos electrónicos.
Prototipos de productos y sistemas.
Arduino utiliza un lenguaje de programación basado en C/C++, pero con algunas simplificaciones para
hacerlo más accesible. El lenguaje en sí está diseñado para ser fácil de aprender, y el entorno de
desarrollo (Arduino IDE) facilita la escritura, compilación y carga de código en la placa Arduino.
Conecta tu placa Arduino a tu computadora mediante un cable USB. El IDE debería detectar la placa
automáticamente.
Los programas de Arduino se llaman "sketches". Estos tienen una estructura básica, que incluye dos
funciones principales:
setup(): Se ejecuta una vez al principio, configurando los pines y otras variables.
loop(): Se ejecuta repetidamente mientras el Arduino está encendido.
Estructura básica de un código Arduino:
Cpp
Copiar código
void setup() {
// Aquí se inicializan las variables y configuraciones
pinMode(13, OUTPUT); // Configura el pin 13 como salida
}
void loop() {
// Aquí se ejecuta el código que corre en bucle
digitalWrite(13, HIGH); // Enciende el LED conectado al pin 13
delay(1000); // Espera 1 segundo
digitalWrite(13, LOW); // Apaga el LED
delay(1000); // Espera 1 segundo
}
Después de escribir el código, selecciona la placa y el puerto adecuado en el IDE (menú "Herramientas")
y presiona el botón de "Subir" para cargar el programa a la placa.
5. Usar bibliotecas
Arduino tiene muchas bibliotecas que facilitan el uso de sensores, motores, pantallas, etc. Puedes incluir
una biblioteca específica para el componente que estés utilizando desde el menú "Programa > Incluir
biblioteca".
Arduino se compone de varias partes fundamentales, tanto de hardware como de software, que son
esenciales para entender cómo funciona y cómo se usa. A continuación, te explico las principales partes
y conceptos asociados con Arduino:
Partes de una Placa Arduino
Existen diferentes modelos de placas Arduino (como Arduino UNO, Nano, Mega), pero la mayoría
comparte una estructura y componentes similares:
1. Microcontrolador (ATmega328P)
Es el cerebro de la placa. Este pequeño chip es un microcontrolador de 8 bits que puede ser
programado para realizar una variedad de tareas. Es donde se ejecuta el código cargado desde el
entorno de desarrollo (IDE).
Son pines numerados del 0 al 13 que pueden ser configurados como entradas o salidas digitales. Estos
pines permiten la interacción con dispositivos externos como LEDs, relés, motores o sensores digitales.
Se usan para leer o escribir señales binarias (HIGH o LOW).
3. Pines Analógicos
Son entradas que permiten leer señales analógicas variables (0-5V). Están etiquetados como A0 a A5.
Estos pines convierten una señal analógica a un valor digital (un número entre 0 y 1023) mediante un
conversor A/D (analógico a digital).
4. Puerto USB
El puerto USB permite conectar el Arduino a una computadora. Sirve tanto para cargar código a la placa
como para alimentarla. También facilita la comunicación serie (Serial) entre la computadora y la placa.
Este conector permite alimentar el Arduino de manera externa mediante un adaptador de corriente (7V a
12V). Es útil cuando el proyecto no depende de una computadora para funcionar.
6. Cristal Oscilador
Es un componente que funciona como un reloj para el microcontrolador, estableciendo una frecuencia
precisa (16 MHz en la mayoría de las placas Arduino Uno). Este reloj regula la velocidad a la que el
microcontrolador ejecuta las instrucciones.
7. Botón de Reset
El botón de reset reinicia el microcontrolador y fuerza la reejecución del programa desde el inicio. Es útil
para reiniciar el sistema sin desconectar la placa de la alimentación.
Este LED se enciende cuando la placa está correctamente alimentada, ya sea a través del USB o del
conector de alimentación externa.
Estos dos LEDs indican la transmisión (TX) y recepción (RX) de datos entre la placa Arduino y otros
dispositivos, como una computadora. Son útiles para monitorizar la comunicación serie.
10. Pines de Alimentación
5V y 3.3V: Estos pines proporcionan una salida de voltaje regulado (5V o 3.3V) para alimentar
dispositivos externos conectados al Arduino.
GND (Tierra): Pines de tierra (0V) que se utilizan para cerrar el circuito con los dispositivos
conectados.
Algunos de los pines digitales tienen una capacidad especial llamada PWM (Modulación por Ancho de
Pulso). Estos pines pueden simular una señal analógica enviando pulsos rápidos, y son útiles para
controlar el brillo de LEDs o la velocidad de motores. En el Arduino Uno, estos pines están marcados
con el símbolo ~.
Copiar código
// Comentarios: explican el código, no se ejecutan
Variables comunes:
1. int (entero):
o Almacena un número entero, positivo o negativo. En el ejemplo: int ledPin = 13;.
o Los valores pueden ir de -32,768 a 32,767.
2. float (flotante):
o Almacena números con decimales (valores de punto flotante). Útil para cálculos más
precisos.
o Ejemplo: float temperatura = 25.5;.
3. boolean (booleano):
o Almacena un valor true o false (verdadero o falso). Utilizado en condiciones.
o Ejemplo: boolean estado = true;.
4. char (carácter):
o Almacena un solo carácter. Ejemplo: char letra = 'A';.
5. unsigned long:
o Almacena un número entero grande sin signo (solo positivo), útil para contar
milisegundos. Su rango es de 0 a 4,294,967,295.
o Ejemplo: unsigned long tiempo = 0;.
Funciones comunes:
1. pinMode(pin, mode):
o Configura el modo de un pin específico (puede ser INPUT, OUTPUT o INPUT_PULLUP).
o Ejemplo: pinMode(ledPin, OUTPUT);.
2. digitalWrite(pin, value):
o Escribe un valor HIGH o LOW (encendido o apagado) en un pin digital.
o Ejemplo: digitalWrite(ledPin, HIGH);.
3. digitalRead(pin):
o Lee el valor (alto o bajo) de un pin digital.
o Ejemplo: int valor = digitalRead(pinBoton);.
4. analogWrite(pin, value):
o Envía una señal PWM (modulación por ancho de pulso) en un pin, lo que permite
controlar dispositivos como motores o LED con brillo variable.
o Ejemplo: analogWrite(ledPin, 128); (donde 128 es la mitad del valor máximo de 255).
5. delay(milliseconds):
o Pausa la ejecución del programa por un número especificado de milisegundos.
o Ejemplo: delay(1000); pausa 1 segundo.