Fichas de Código Arduino y Esquemas Visuales
LED Parpadeante
void setup() {
pinMode(13, OUTPUT);
}
void loop() {
digitalWrite(13, HIGH);
delay(1000);
digitalWrite(13, LOW);
delay(1000);
}
LED con Botón
int boton = 2;
int led = 13;
void setup() {
pinMode(boton, INPUT);
pinMode(led, OUTPUT);
}
void loop() {
if (digitalRead(boton) == HIGH) {
digitalWrite(led, HIGH);
} else {
digitalWrite(led, LOW);
}
}
Semáforo 3 LEDs
int rojo = 8;
int amarillo = 9;
int verde = 10;
void setup() {
pinMode(rojo, OUTPUT);
pinMode(amarillo, OUTPUT);
pinMode(verde, OUTPUT);
}
void loop() {
digitalWrite(verde, HIGH);
delay(2000);
digitalWrite(verde, LOW);
digitalWrite(amarillo, HIGH);
delay(1000);
digitalWrite(amarillo, LOW);
digitalWrite(rojo, HIGH);
delay(2000);
digitalWrite(rojo, LOW);
}
Sensor de luz (LDR)
void setup() {
[Link](9600);
}
void loop() {
int valor = analogRead(A0);
[Link](valor);
delay(500);
}
Motor DC con transistor
int motor = 9;
void setup() {
pinMode(motor, OUTPUT);
}
void loop() {
digitalWrite(motor, HIGH);
delay(1000);
digitalWrite(motor, LOW);
delay(1000);
}
Sensor ultrasónico
long duracion;
int distancia;
void setup() {
pinMode(9, OUTPUT);
pinMode(10, INPUT);
[Link](9600);
}
void loop() {
digitalWrite(9, LOW);
delayMicroseconds(2);
digitalWrite(9, HIGH);
delayMicroseconds(10);
digitalWrite(9, LOW);
duracion = pulseIn(10, HIGH);
distancia = duracion * 0.034 / 2;
[Link]("Distancia: ");
[Link](distancia);
[Link](" cm");
delay(500);
}
Alarma de proximidad
int trig = 9;
int echo = 10;
int buzzer = 8;
void setup() {
pinMode(trig, OUTPUT);
pinMode(echo, INPUT);
pinMode(buzzer, OUTPUT);
[Link](9600);
}
void loop() {
digitalWrite(trig, LOW);
delayMicroseconds(2);
digitalWrite(trig, HIGH);
delayMicroseconds(10);
digitalWrite(trig, LOW);
long duracion = pulseIn(echo, HIGH);
int distancia = duracion * 0.034 / 2;
if (distancia < 20) {
digitalWrite(buzzer, HIGH);
} else {
digitalWrite(buzzer, LOW);
}
delay(200);
}
Robot seguidor de línea
int sensorIzq = A0;
int sensorDer = A1;
int motor1A = 8;
int motor1B = 9;
int motor2A = 10;
int motor2B = 11;
void setup() {
pinMode(sensorIzq, INPUT);
pinMode(sensorDer, INPUT);
pinMode(motor1A, OUTPUT);
pinMode(motor1B, OUTPUT);
pinMode(motor2A, OUTPUT);
pinMode(motor2B, OUTPUT);
}
void loop() {
int izq = digitalRead(sensorIzq);
int der = digitalRead(sensorDer);
if (izq == 0 && der == 0) {
adelante();
} else if (izq == 0 && der == 1) {
girarIzq();
} else if (izq == 1 && der == 0) {
girarDer();
} else {
parar();
}
}
void adelante() {
digitalWrite(motor1A, HIGH);
digitalWrite(motor1B, LOW);
digitalWrite(motor2A, HIGH);
digitalWrite(motor2B, LOW);
}
void girarIzq() {
digitalWrite(motor1A, LOW);
digitalWrite(motor1B, HIGH);
digitalWrite(motor2A, HIGH);
digitalWrite(motor2B, LOW);
}
void girarDer() {
digitalWrite(motor1A, HIGH);
digitalWrite(motor1B, LOW);
digitalWrite(motor2A, LOW);
digitalWrite(motor2B, HIGH);
}
void parar() {
digitalWrite(motor1A, LOW);
digitalWrite(motor1B, LOW);
digitalWrite(motor2A, LOW);
digitalWrite(motor2B, LOW);
}