Arduino Setup

🔌 Conexiones del Sistema Arduino

📍 Resumen de Pines

ComponentePin ArduinoTipo
LED 113Digital OUT
LED 212Digital OUT
LED 311Digital OUT
Servo Motor9PWM OUT
Buzzer8Digital OUT
Ultrasonico TRIG7Digital OUT
Ultrasonico ECHO6Digital IN
MAX7219 DIN5Digital OUT
MAX7219 CS4Digital OUT
MAX7219 CLK3Digital OUT
LCD SDAA4I2C
LCD SCLA5I2C

🔹 LEDs

LED1 (+) → Pin 13
LED2 (+) → Pin 12
LED3 (+) → Pin 11
Todos (-) → GND (con resistencia 220Ω)

🔹 Servo Motor

Rojo  → 5V (o fuente externa recomendada)
Marrón/Negro → GND
Naranja/Amarillo → Pin 9

🔹 Buzzer

(+) → Pin 8
(-) → GND

🔹 Sensor Ultrasónico (HC-SR04)

VCC  → 5V
GND  → GND
TRIG → Pin 7
ECHO → Pin 6

🔹 Matriz LED MAX7219

VCC → 5V
GND → GND
DIN → Pin 5
CS  → Pin 4
CLK → Pin 3

🔹 LCD I2C

VCC → 5V
GND → GND
SDA → A4
SCL → A5

⚠️ Consideraciones

  • Usar GND común para todos los componentes.
  • Servo puede requerir fuente externa (5V) si hay inestabilidad.
  • LCD puede usar dirección 0x27 o 0x3F.
  • Evitar alimentar múltiples módulos desde el Arduino si hay consumo alto.

🧠 Arquitectura del Sistema

[Ultrasonico] → distancia →
        ├── Servo (movimiento)
        ├── Buzzer (alerta)
        ├── LEDs (estado)
        ├── LCD (información)
        └── Matriz LED (visual)

Ejemplo 1 – LED parpadeante

led_basico.ino
const int LED = 13;

void setup() {
  pinMode(LED, OUTPUT);
}

void loop() {
  digitalWrite(LED, HIGH);
  delay(1000);
  digitalWrite(LED, LOW);
  delay(1000);
}

Ejemplo 2 - Múltiples LEDs

leds.ino
const int LED1 = 13;
const int LED2 = 12;
const int LED3 = 11;

void setup() {
  pinMode(LED1, OUTPUT);
  pinMode(LED2, OUTPUT);
  pinMode(LED3, OUTPUT);
}

void loop() {
  digitalWrite(LED1, HIGH);
  digitalWrite(LED2, HIGH);
  digitalWrite(LED3, HIGH);
  delay(1000);

  digitalWrite(LED1, LOW);
  digitalWrite(LED2, LOW);
  digitalWrite(LED3, LOW);
  delay(1000);
}

Ejemplo 3 - LCD I2C

lcd.ino
#include <Wire.h>
#include <LiquidCrystal_I2C.h>

LiquidCrystal_I2C lcd(0x27,16,2);

void setup() {
  lcd.init();
  lcd.backlight();
  lcd.print("Hola Mundo");
}
void loop() {}

Ejemplo 4 - Matriz LED MAX7219

matriz.ino
#include <LedControl.h>

LedControl lc = LedControl(5,3,4,1);

byte carita[8] = {
  B00111100,
  B01000010,
  B10100101,
  B10000001,
  B10100101,
  B10011001,
  B01000010,
  B00111100
};

void setup(){
  lc.shutdown(0,false);
  lc.setIntensity(0,8);
}

void loop(){
  for(int i=0;i<8;i++){
    lc.setRow(0,i,carita[i]);
  }
}

Ejemplo 5 - Servo Motor

servo.ino
#include <Servo.h>

Servo servo;

void setup() {
  servo.attach(9);
}

void loop() {
  servo.write(0);
  delay(1000);
  servo.write(90);
  delay(1000);
  servo.write(180);
  delay(1000);
}

Ejemplo 6 - Sensor Ultrasónico

ultrasonico.ino
const int TRIG = 7;
const int ECHO = 6;

void setup() {
  pinMode(TRIG, OUTPUT);
  pinMode(ECHO, INPUT);
  Serial.begin(9600);
}

void loop() {
  digitalWrite(TRIG, LOW);
  delayMicroseconds(2);
  digitalWrite(TRIG, HIGH);
  delayMicroseconds(10);
  digitalWrite(TRIG, LOW);

  long duracion = pulseIn(ECHO, HIGH);
  long distancia = duracion * 0.034 / 2;

  Serial.println(distancia);
  delay(500);
}

Ejemplo 7 - Buzzer

buzzer.ino
const int BUZZER = 8;

void setup() {
  pinMode(BUZZER, OUTPUT);
}

void loop() {
  tone(BUZZER, 1000);
  delay(500);
  noTone(BUZZER);
  delay(500);
}

Ejemplo 8 - Integración: Sensor + Servo + Buzzer

sistema.ino
#include <Servo.h>

const int TRIG = 7;
const int ECHO = 6;
const int BUZZER = 8;

Servo servo;

void setup() {
  servo.attach(9);
  pinMode(TRIG, OUTPUT);
  pinMode(ECHO, INPUT);
}

long distancia() {
  digitalWrite(TRIG, LOW);
  delayMicroseconds(2);
  digitalWrite(TRIG, HIGH);
  delayMicroseconds(10);
  digitalWrite(TRIG, LOW);

  return pulseIn(ECHO, HIGH) * 0.034 / 2;
}

void loop() {
  long d = distancia();

  if (d < 20) {
    servo.write(180);
    tone(BUZZER, 2000);
  } else {
    servo.write(0);
    noTone(BUZZER);
  }

  delay(200);
}
s

© 2026 LABREMOTE — Laboratorio remoto IoT para educación y experimentación.

Sistema operativo
v1.0.0