9. Funciones Digitales Básicas
Funciones Digitales Básicas en Arduino
📌 Introducción
En este tutorial aprenderás las funciones digitales básicas de Arduino para configurar pines, leer entradas y controlar salidas. Estas herramientas son esenciales para comenzar a programar microcontroladores.
https://i.imgur.com/placeholder.png Ilustración de puertos de entrada/salida
🧠 Conceptos Básicos
Puertos de Entrada/Salida
Los microcontroladores tienen pines digitales (del 0 al 13 en Arduino UNO)
Algunos pines reciben información (entradas)
Otros pines envían resultados (salidas)
Todos los pines son configurables: puedes decidir su función
⚙️ Funciones Principales
1. pinMode() - Configurar pines
Define si un pin será entrada (INPUT) o salida (OUTPUT).
Sintaxis:
pinMode(pin, mode);Ejemplos:
pinMode(10, OUTPUT); // Pin 10 como salida
pinMode(3, INPUT); // Pin 3 como entrada2. digitalWrite() - Controlar salidas
Envía un valor HIGH (5V) o LOW (0V) por un pin configurado como salida.
Sintaxis:
digitalWrite(pin, value);Ejemplos:
digitalWrite(12, HIGH); // Envía 5V por pin 12
digitalWrite(7, LOW); // Envía 0V por pin 73. digitalRead() - Leer entradas
Lee el valor (HIGH o LOW) de un pin configurado como entrada.
Sintaxis:
digitalRead(pin);Ejemplos:
int valorPin8 = digitalRead(8); // Lee valor del pin 8
int valorPin7 = digitalRead(7); // Lee valor del pin 74. delay() - Pausas en el programa
Detiene la ejecución del programa por un tiempo determinado en milisegundos.
Sintaxis:
delay(ms);Ejemplos:
delay(1500); // Pausa de 1.5 segundos
delay(7000); // Pausa de 7 segundosNota: El valor máximo permitido es 32767 (≈32 segundos) por limitaciones de enteros de 16 bits.
⚠️ Consideraciones Importantes
Mayúsculas/minúsculas: Diferencian entre funciones y valores
Correcto:
OUTPUT,INPUT,HIGH,LOWIncorrecto:
output,input,high,low
Punto y coma: Todas las sentencias terminan con
;Valores físicos:
LOW= 0V (tierra)HIGH= 5V (voltaje de operación)
🧪 Ejemplo Práctico
Control de foco con sensor
Componentes:
Pin 8: Relay → Salida (controla foco)
Pin 2: Sensor → Entrada (lee datos)
Código:
void setup() {
// Configurar pines
pinMode(8, OUTPUT); // Pin 8 como salida
pinMode(2, INPUT); // Pin 2 como entrada
// Encender foco inicialmente
digitalWrite(8, HIGH);
}
void loop() {
// Leer sensor continuamente
int valorSensor = digitalRead(2);
// Aquí iría la lógica de control según el valor del sensor
// Ej: if (valorSensor == HIGH) { ... }
}💡 Consejos Adicionales
Siempre verifica la configuración de pines en
setup()Usa
delay()con moderación para no bloquear el programaLos pines analógicos (A0-A5) también pueden usarse como digitales
🎯 Resumen
Con estas cuatro funciones básicas ya tienes las herramientas necesarias para:
Configurar pines como entrada/salida
Leer valores de sensores digitales
Controlar dispositivos como LEDs, relays y motores
Crear intervalos de tiempo en tus programas
¡Estás listo para comenzar a programar con Arduino!
Comentarios
Publicar un comentario