PROGRAMACIÓN EN ARDUINO
Proyecto Final: Carrito Bluetooth controlado desde aplicación móvil
Nivel: Preparatoria - Desde cero
1. CÓMO PIENSA ARDUINO (LA BASE DE TODO)
Arduino siempre trabaja así:
ENTRADA → PROCESO → SALIDA
Ejemplo en el carrito:
Celular envía letra → Arduino la recibe → Decide → Motores se mueven
2. ESTRUCTURA BÁSICA DE TODO PROGRAMA
void setup() {
}
void loop() {
}
setup():
Se ejecuta una sola vez al iniciar.
Aquí se configuran pines y comunicación.
loop():
Se repite para siempre.
Aquí va la lógica del programa.
3. PINES DIGITALES Y ANALÓGICOS
Pines Digitales:
Solo tienen dos valores:
HIGH = 5V
LOW = 0V
Sirven para LED, motores, relevadores.
Pines Analógicos:
Leen valores entre 0 y 1023.
Sirven para sensores.
PWM (MUY IMPORTANTE):
analogWrite(pin, valor);
Valores de 0 a 255.
No cambia el voltaje realmente.
Enciende y apaga muy rápido para simular intensidad.
Sirve para velocidad de motores.
4. FUNCIONES BÁSICAS IMPORTANTES
pinMode(pin, modo);
Configura un pin.
Modo puede ser:
OUTPUT
INPUT
INPUT_PULLUP
digitalWrite(pin, HIGH/LOW);
Enciende o apaga.
digitalRead(pin);
Lee botón.
analogRead(A0);
Lee valor de 0 a 1023.
analogWrite(pin, valor);
Controla intensidad (0 a 255).
delay(1000);
Espera 1 segundo.
5. VARIABLES (CAJAS PARA GUARDAR DATOS)
int numero = 5; // Entero
float decimal = 3.14; // Decimal
bool estado = true; // Verdadero o falso
char letra = 'A'; // Un carácter
String texto = "Hola"; // Texto
Otros útiles:
long
unsigned int
byte
6. OPERADORES
= Asignar
== Comparar
!= Diferente
> Mayor
< Menor
>= Mayor o igual
<= Menor o igual
Operadores matemáticos:
+ suma
- resta
* multiplicación
/ división
% residuo
7. CONDICIONALES (EL CEREBRO)
if (condicion) {
}
if (condicion) {
} else {
}
Ejemplo:
if (comando == 'F') {
// Adelante
}
8. CICLOS
for (int i = 0; i < 5; i++) {
}
while (condicion) {
}
loop() ya es un ciclo infinito.
9. COMUNICACIÓN SERIAL
[Link](9600);
Inicia comunicación.
[Link]("Hola");
Envía mensaje.
if ([Link]()) {
char dato = [Link]();
}
10. BLUETOOTH HC-05 / HC-06
Funciona como comunicación Serial.
Conexión:
TX → RX
RX → TX
5V
GND
El celular envía letras.
Arduino las recibe y ejecuta acciones.
11. ESTRUCTURA REAL DE UN CARRITO BLUETOOTH
int motor1A = 5;
int motor1B = 6;
void setup() {
pinMode(motor1A, OUTPUT);
pinMode(motor1B, OUTPUT);
[Link](9600);
}
void loop() {
if ([Link]()) {
char comando = [Link]();
if (comando == 'F') {
digitalWrite(motor1A, HIGH);
digitalWrite(motor1B, LOW);
}
if (comando == 'S') {
digitalWrite(motor1A, LOW);
digitalWrite(motor1B, LOW);
}
}
}
12. LIBRERÍAS
Se agregan al inicio:
#include <NombreLibreria.h>
Sirven para pantallas, sensores, módulos especiales.
Pasos:
1. Instalar librería.
2. Incluir arriba.
3. Crear objeto si es necesario.
4. Usar funciones de esa librería.
13. VALORES IMPORTANTES QUE DEBEN MEMORIZAR
HIGH = 5V
LOW = 0V
PWM = 0 a 255
Analógico = 0 a 1023
Velocidad Serial común = 9600
true / false
14. ERRORES MÁS COMUNES
1. Olvidar ;
2. No cerrar llaves { }
3. Escribir mal funciones
4. Usar = en vez de ==
5. No configurar pinMode()
Siempre leer el mensaje de error.