#define antes de incluir la librería.
Motor PAP (paso a paso)
Controla la posición de un motor paso a paso en función del valor leído de un potenciómetro conectado al pin analógico A0. El motor se mueve solo la diferencia entre la posición actual y la anterior.Conecta el motor paso a paso a los pines 8, 9, 10 y 11 mediante un driver de motor (por ejemplo, ULN2003 para motores 28BYJ-48 o similar). Conecta el potenciómetro entre 5 V, GND y la patilla central al pin A0.
MotorPAP.ino
Diagrama de conexión
1
Driver del motor → pines 8, 9, 10 y 11
Las cuatro entradas de control del driver (IN1, IN2, IN3, IN4 en el ULN2003) se conectan a los pines 8, 9, 10 y 11 respectivamente. El driver se alimenta con 5 V y GND independientes.
2
Potenciómetro → A0
El pin central (cursor) del potenciómetro va al pin A0. Los extremos van a 5 V y GND. Girando el potenciómetro se controla la posición del motor.
Explicación línea por línea
1
#define INCLUIR_MOTOR_PAP
Activa el módulo
MotorPAP de Cod-ES, que envuelve la clase Stepper de Arduino en español. Debe declararse antes de #include <Cod-ES.h>.2
constante entero PASOS = 100
Define el número de pasos por revolución del motor.
constante equivale a const en Arduino estándar. Este valor depende del motor físico utilizado (un 28BYJ-48 tiene 2048 pasos por revolución en modo completo).3
MotorPAP motor(PASOS, 8, 9, 10, 11)
Crea un objeto de la clase
MotorPAP. Los argumentos son: pasos por revolución y los cuatro pines de control del motor en el driver.4
motor.ajustarVelocidad(30)
Equivale a
stepper.setSpeed(30). Configura la velocidad del motor en RPM. A mayor valor, más rápido gira el motor (dentro de los límites físicos del hardware).5
entero valor = leerPin(0, ANALOGICO)
Lee el valor del potenciómetro en el pin A0 (especificado como
0). El valor está entre 0 y 1023.6
motor.paso(valor - previo)
Equivale a
stepper.step(valor - previo). Mueve el motor el número de pasos igual a la diferencia entre la posición actual del potenciómetro y la anterior. Si no hubo cambio, el motor no se mueve. Un valor negativo gira en sentido contrario.7
previo = valor
Guarda el valor actual como referencia para el próximo ciclo, de modo que solo se mueva la diferencia incremental.
LCD I2C
Muestra texto en una pantalla LCD 16x2 conectada por el bus I2C. Al iniciar la placa, enciende el backlight y escribe ”!Hola, mundo!” en la primera fila.Conecta el módulo LCD I2C de la siguiente manera: SDA al pin A4, SCL al pin A5, VCC a 5 V y GND a GND. La dirección I2C predeterminada es
0x27 (puede variar según el módulo; usa un escáner I2C si no funciona).LCD.ino
Diagrama de conexión del módulo I2C
1
GND → GND
Referencia de tierra compartida entre el módulo y la placa Arduino.
2
VCC → 5 V
Alimentación del módulo LCD I2C.
3
SDA → pin A4
Línea de datos del bus I2C. En Arduino Uno y Nano, SDA está en el pin A4.
4
SCL → pin A5
Línea de reloj del bus I2C. En Arduino Uno y Nano, SCL está en el pin A5.
Explicación línea por línea
1
#define INCLUIR_LCD_I2C
Activa el módulo
LCD_I2C de Cod-ES. Debe declararse antes de #include <Cod-ES.h>.2
LCD_I2C lcd(0x27, 16, 2)
Crea un objeto de la clase
LCD_I2C. Los argumentos son: dirección I2C del módulo (0x27), número de columnas (16) y número de filas (2). Ajusta la dirección si tu módulo usa 0x3F u otra.3
lcd.inicializar()
Inicializa la comunicación I2C con el display y lo prepara para recibir texto. Debe llamarse en
inicio antes de cualquier otra operación sobre el LCD.4
lcd.encenderLuz()
Enciende el backlight (retroiluminación) del display. Por defecto el backlight está apagado tras la inicialización.
5
lcd.ajustarCursor(1, 0)
Posiciona el cursor en la columna 1, fila 0 (segunda columna, primera fila). Los índices comienzan en 0. Equivale a
lcd.setCursor(1, 0) en la librería LiquidCrystal_I2C estándar.6
lcd.imprimirCadena("!Hola, mundo!")
Escribe la cadena de texto en la posición actual del cursor. Equivale a
lcd.print("!Hola, mundo!").7
bucle (vacío)
El bloque
bucle está vacío porque el ejemplo solo escribe el mensaje una vez al inicio. El LCD retiene el contenido mientras esté alimentado.Plantilla
El archivoPlantilla.ino es el punto de partida recomendado para crear nuevos sketches con Cod-ES. Incluye la librería y define los bloques mínimos inicio y bucle con comentarios guía.
Plantilla.ino