Thanks to visit codestin.com
Credit goes to www.scribd.com

0% found this document useful (0 votes)
30 views19 pages

Resumen Arduino

The document contains 9 code examples demonstrating various Arduino projects using LEDs, buttons, and sensors. The examples include: 1) an ascending and descending LED ladder; 2) turning on an LED when a button is pressed; 3) toggling an LED on and off with a button; 4) incrementing and decrementing a 6 LED counter with buttons; 5) changing an LED's blinking speed with buttons; 6) building a traffic light with sensors; 7) controlling LED brightness with a potentiometer; 8) detecting day and night with a light sensor; and 9) fading an RGB LED.

Uploaded by

Rosario
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
30 views19 pages

Resumen Arduino

The document contains 9 code examples demonstrating various Arduino projects using LEDs, buttons, and sensors. The examples include: 1) an ascending and descending LED ladder; 2) turning on an LED when a button is pressed; 3) toggling an LED on and off with a button; 4) incrementing and decrementing a 6 LED counter with buttons; 5) changing an LED's blinking speed with buttons; 6) building a traffic light with sensors; 7) controlling LED brightness with a potentiometer; 8) detecting day and night with a light sensor; and 9) fading an RGB LED.

Uploaded by

Rosario
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 19

Rosario Pariente

Resumen Arduino

1. LED EN ESCALERA ASCENDENTE Y DESCENDENTE

int led_rojo = 13;


int led_naranja = 12;
int led_amarillo = 11;
int led_verde = 10;
int led_azul = 9;
int retardo = 300;

// C++ code
//

void setup()
{
pinMode(led_rojo, OUTPUT);
pinMode(led_naranja, OUTPUT);
pinMode(led_amarillo, OUTPUT);
pinMode(led_verde, OUTPUT);
pinMode(led_azul, OUTPUT);
}

void loop()
{
digitalWrite(led_rojo, HIGH);
delay(retardo);

digitalWrite(led_naranja, HIGH);
delay(retardo);

digitalWrite(led_amarillo, HIGH);
delay(retardo);

digitalWrite(led_verde, HIGH);
delay(retardo);

digitalWrite(led_azul, HIGH);
delay(retardo);

digitalWrite(led_azul, LOW);
delay(retardo);

digitalWrite(led_verde, LOW);
Rosario Pariente

delay(retardo);

digitalWrite(led_amarillo, LOW);
delay(retardo);

digitalWrite(led_naranja, LOW);
delay(retardo);

digitalWrite(led_rojo, LOW);
delay(retardo);
}

2. PULSADOR LED

int led_1 = 13;

int pulsador = 7;

void setup()

pinMode(led_1, OUTPUT);

pinMode(pulsador, INPUT);

void loop()

int bandera = digitalRead(pulsador);

if(bandera==1){

digitalWrite(led_1, HIGH);

if(bandera==0){

digitalWrite(led_1, LOW);

}
Rosario Pariente

3. PULSADOR APAGAR ENCENDER

const int led_1 = 13;

const int pulsador = 7;

int bandera = 0;

int lucecita = 0;

bool estado = 0;

void setup() //inicializar los pines

pinMode(led_1, OUTPUT);

pinMode(pulsador, INPUT_PULLUP);

void loop(){

/*Programa para implementar el encendido de un led mediante un pulsador con enclavamiento.

*/

bandera = digitalRead(pulsador);

if((bandera==HIGH)&&(lucecita==LOW)){

estado=1-estado;

delay(200);

bandera=lucecita;

if(estado==1){

digitalWrite(led_1, HIGH);
Rosario Pariente

if(estado==0){

digitalWrite(led_1, LOW);

4. CONTADOR

const int pulsador_resta = 3;

const int pulsador_suma = 4;

const int led1 = 5;

const int led2 = 6;

const int led3 = 7;

const int led4 = 8;

const int led5 = 9;

const int led6 = 10;

int contador = 0;

void setup()

pinMode (pulsador_resta, INPUT_PULLUP);

pinMode (pulsador_suma, INPUT_PULLUP);

pinMode (led1, OUTPUT);

pinMode (led2, OUTPUT);


Rosario Pariente

pinMode (led3, OUTPUT);

pinMode (led4, OUTPUT);

pinMode (led5, OUTPUT);

pinMode (led6, OUTPUT);

void loop()

int lectura_resta = digitalRead (pulsador_resta);

int lectura_suma = digitalRead (pulsador_suma);

if (lectura_resta == LOW)

delay (500);//antirebote

if (contador == 0)

contador = 0;

else

contador = contador-1;

if (lectura_suma == LOW)

delay(500);

if (contador == 6)

contador = 6;
Rosario Pariente

else

contador=contador+1;

if (contador == 0)

digitalWrite (led1, LOW);

digitalWrite (led2, LOW);

digitalWrite (led3, LOW);

digitalWrite (led4, LOW);

digitalWrite (led5, LOW);

digitalWrite (led6, LOW);

if (contador == 1)

digitalWrite (led1, HIGH);

digitalWrite (led2, LOW);

digitalWrite (led3, LOW);

digitalWrite (led4, LOW);

digitalWrite (led5, LOW);

digitalWrite (led6, LOW);

if (contador == 2)

digitalWrite (led1, HIGH);

digitalWrite (led2, HIGH);

digitalWrite (led3, LOW);


Rosario Pariente

digitalWrite (led4, LOW);

digitalWrite (led5, LOW);

digitalWrite (led6, LOW);

if (contador == 3)

digitalWrite (led1, HIGH);

digitalWrite (led2, HIGH);

digitalWrite (led3, HIGH);

digitalWrite (led4, LOW);

digitalWrite (led5, LOW);

digitalWrite (led6, LOW);

if (contador == 4)

digitalWrite (led1, HIGH);

digitalWrite (led2, HIGH);

digitalWrite (led3, HIGH);

digitalWrite (led4, HIGH);

digitalWrite (led5, LOW);

digitalWrite (led6, LOW);

if (contador == 5)

digitalWrite (led1, HIGH);

digitalWrite (led2, HIGH);

digitalWrite (led3, HIGH);

digitalWrite (led4, HIGH);

digitalWrite (led5, HIGH);

digitalWrite (led6, LOW);


Rosario Pariente

if (contador == 6)

digitalWrite (led1, HIGH);

digitalWrite (led2, HIGH);

digitalWrite (led3, HIGH);

digitalWrite (led4, HIGH);

digitalWrite (led5, HIGH);

digitalWrite (led6, HIGH);

5. LED RENTO RAPIDO

void setup()

pinMode(6,INPUT_PULLUP);

pinMode(7, INPUT_PULLUP);

pinMode(13, OUTPUT);

void loop()

int lectura_rapido = digitalRead(6);

int lectura_lento = digitalRead(7);

if(lectura_rapido == LOW)

{
Rosario Pariente

digitalWrite (13, HIGH);

delay (500);

digitalWrite (13, LOW);

delay (500);

else if(lectura_lento == LOW)

digitalWrite (4000, HIGH);

delay (2500);

digitalWrite (4000, LOW);

delay (2500);

if(lectura_lento == HIGH)

digitalWrite (13, HIGH);

delay (1500);

digitalWrite (13, LOW);

delay (1500);

if(lectura_rapido == HIGH)

digitalWrite (13, HIGH);

delay (1500);

digitalWrite (13, LOW);

delay (1500);

}
Rosario Pariente

6. SEMAFORO

// Ponemos las constantes de pulsadores y leds

const int TAB = 2;

const int TCD = 3;

const int SRAB = 4;

const int SVAB = 5;

const int SRCD = 6;

const int SVCD = 7;

//Tiempo de espera del cambio de semáforos.

int tiempoEspera = 5000;

void setup() {

// Iniciamos el monitor serie

Serial.begin(9600);

// Modo entrada y salida de los pines

pinMode(TAB, INPUT);

pinMode(TCD, INPUT);

pinMode(SVAB, OUTPUT);

pinMode(SRAB, OUTPUT);
Rosario Pariente

pinMode(SVCD, OUTPUT);

pinMode(SRCD, OUTPUT);

void loop() {

int TAB = digitalRead(2);

int TCD = digitalRead(3);

// Si hay no hay tráfico en ninguna calle o si hay tráfico en las dos calles

if ((TAB==LOW and TCD==LOW)or (TAB==HIGH and TCD==HIGH))

digitalWrite(SRCD, LOW);

digitalWrite(SVAB, LOW);

digitalWrite(SRAB, HIGH);

digitalWrite(SVCD, HIGH);

delay(tiempoEspera);

digitalWrite(SRAB, LOW);

digitalWrite(SVCD, LOW);

digitalWrite(SRCD, HIGH);

digitalWrite(SVAB, HIGH);

delay(tiempoEspera);

digitalWrite(SRCD, LOW);

digitalWrite(SVAB, LOW);

}
Rosario Pariente

// Si hay tráfico en la calle AB pero no hay tráfico en CD

else if ((TAB==HIGH) or (TCD==LOW))

digitalWrite(SRAB, LOW);

digitalWrite(SVCD, LOW);

digitalWrite(SVAB, HIGH);

digitalWrite(SRCD, HIGH)

// Si hay tráfico en la calle CD pero no hay tráfico en AB

else if ((TAB==LOW) or (TCD==HIGH))

digitalWrite(SRAB, HIGH);

digitalWrite(SVCD, HIGH);

digitalWrite(SVAB, LOW);

digitalWrite(SRCD, LOW);

7. LED CON POTENCIOMETRO

int senal_analogica=0;

const int led = 5;

const int led1 = 4;

const int led2 = 3;


Rosario Pariente

void setup()

Serial.begin (9600);

pinMode(led,OUTPUT);

pinMode(led1,OUTPUT);

pinMode(led2,OUTPUT);

void loop()

senal_analogica=analogRead(A0);

Serial.println(senal_analogica);

//Senal en el primer tecio de la entrada led apagado

if ((senal_analogica<=0) and (senal_analogica <250)){

analogWrite (led,0);

analogWrite (led1,0);

analogWrite (led2,0);

//Senal en el segundo tercio con led muy tenue

}else if ((senal_analogica>=250) and (senal_analogica <500)){

analogWrite(led,255);

analogWrite (led1,0);

analogWrite (led2,0);

}else if ((senal_analogica>=500) and (senal_analogica <751)){

analogWrite(led,255);

analogWrite (led1,255);

analogWrite (led2,0);

//Senal en el tercel tercio led a tope

}else{

analogWrite(led,255);
Rosario Pariente

analogWrite (led1,255);

analogWrite (led2,255);

8. FOTOSENSOR NOCHE DIA

int escritura=0;
int senal_analogica=0;
const int led = 10;
const int led1 = 9;
const int led2 = 8;

void setup()
{

Serial.begin (9600);

pinMode(led,OUTPUT);
pinMode(led1,OUTPUT);
pinMode(led2,OUTPUT);

}
void loop()
{
Serial.println(analogRead(A0));
delay(500);
escritura=map(senal_analogica,14,1010,0,4);

if(escritura==0){

digitalWrite(led, HIGH);
digitalWrite(led1, HIGH);
digitalWrite(led2, HIGH);
}

else if (escritura==1){
digitalWrite(led, HIGH);
digitalWrite(led1, HIGH);
digitalWrite(led2, LOW);
}
Rosario Pariente

else if (escritura==2){
digitalWrite(led, HIGH);
digitalWrite(led1, LOW);
digitalWrite(led2, LOW);
}
else if ((escritura==3)or(escritura==6)){
digitalWrite(led, LOW);
digitalWrite(led1, LOW);
digitalWrite(led2, LOW);
}
}
9. LED RGB
int luce= 0;
void setup()
{
pinMode(9, OUTPUT);
pinMode(10, OUTPUT);
pinMode(11, OUTPUT);
}

void loop()
{
for (luce = 0; luce <= 255; luce += 5) {
analogWrite(9, luce);
delay(50);
}
for (luce = 255; luce >= 0; luce -= 5) {
analogWrite(9, luce);
delay(5);
}
for (luce = 0; luce <= 255; luce += 5) {
analogWrite(10, luce);
delay(5);
}
for (luce = 255; luce >= 0; luce -= 5) {
analogWrite(10, luce);
delay(5);
}
for (luce = 0; luce <= 255; luce += 5) {
analogWrite(11, luce);
delay(5);
}
for (luce = 255; luce >= 0; luce -= 5) {
analogWrite(11, luce);
delay(5);
}
for (luce = 0; luce <= 255; luce += 5) {
analogWrite(9, luce);
analogWrite(10, luce);
analogWrite(11, luce);
delay(5);
}
for (luce = 255; luce >= 0; luce -= 5) {
analogWrite(9, luce);
analogWrite(10, luce);
analogWrite(11, luce);
delay(5); }}
Rosario Pariente

10. SERVOMOTOR CON POTENCIOMETRO

motor.attach(3);
}

void loop()
{

lectura = analogRead(A0);
angulo = map(lectura,0,1023,0,180);

motor.write(angulo);
delay(1000);
}

11.CAJA FUERTE

#include <Keypad.h>

// Definimos el teclado matricial


const byte ROWS = 4; // número de filas del teclado matricial
const byte COLS = 4; // número de columnas del teclado matricial
char keys[ROWS][COLS] = {
{'1', '2', '3', 'A'},
{'4', '5', '6', 'B'},
{'7', '8', '9', 'C'},
{'*', '0', '#', 'D'}
};
byte rowPins[ROWS] = {12, 11, 10, 9}; // conectamos las filas del teclado matricial a los pines digitales 12,
11, 10, 9
Rosario Pariente

byte colPins[COLS] = {8, 7, 6, 5}; // conectamos las columnas del teclado matricial a los pines digitales 8,
7, 6, 5
Keypad keypad = Keypad(makeKeymap(keys), rowPins, colPins, ROWS, COLS);

// Definimos los pines de los leds


const byte LED_ROJO_1 = A1;
const byte LED_ROJO_2 = A2;
const byte LED_ROJO_3 = A3;
const byte LED_VERDE = A0;

// Definimos la clave correcta


const String clave_correcta = "984";

void setup() {
// Configuramos los pines de los leds como salidas
pinMode(LED_ROJO_1, OUTPUT);
pinMode(LED_ROJO_2, OUTPUT);
pinMode(LED_ROJO_3, OUTPUT);
pinMode(LED_VERDE, OUTPUT);
}

void loop() {
// Pedimos al usuario que introduzca la clave
String clave_introducida = "";
while (clave_introducida.length() < 3) {
char key = keypad.getKey();
if (key != NO_KEY) {
// Si el usuario pulsa una tecla, la añadimos a la clave introducida
clave_introducida += key;

// Encendemos un led rojo para indicar que se ha introducido un dígito


if (clave_introducida.length() == 1) {
digitalWrite(LED_ROJO_1, HIGH);
} else if (clave_introducida.length() == 2) {
digitalWrite(LED_ROJO_2, HIGH);
} else if (clave_introducida.length() == 3) {
digitalWrite(LED_ROJO_3, HIGH);
}
}
}

// Comprobamos si la clave introducida es correcta


if (clave_introducida == clave_correcta) {
// Si es correcta, encendemos el led verde durante 3 segundos
digitalWrite(LED_ROJO_1, LOW);
digitalWrite(LED_ROJO_2, LOW);//apagamos los led rojos cuando la contraseña sea correcta
digitalWrite(LED_ROJO_3, LOW);

digitalWrite(LED_VERDE, HIGH);
delay(3000);
digitalWrite(LED_VERDE, LOW);
} else {
// Si es incorrecta, hacemos parpadear los tres leds rojos 5 veces durante medio segundo
for (byte i = 0; i < 5; i++) {
digitalWrite(LED_ROJO_1, HIGH);
digitalWrite(LED_ROJO_2, HIGH);
digitalWrite(LED_ROJO_3, HIGH);
Rosario Pariente

delay(250);
digitalWrite(LED_ROJO_1, LOW);
digitalWrite(LED_ROJO_2, LOW);
digitalWrite(LED_ROJO_3, LOW);
delay(250);
}
}
}
12. SENSOR DISPLAY

#include <LiquidCrystal.h>

LiquidCrystal lcd(12, 11, 2, 3, 4, 5);

void setup()
{
lcd.begin(16,2);
lcd.print("Holi :)");

lcd.setCursor(0,1);
lcd.print("ME QUIERO MORIR :)");
}

void loop() {}

13. SENSOR DISPLAY CON LECTURA


Rosario Pariente

#include <LiquidCrystal.h>

LiquidCrystal lcd(12, 11, 2, 3, 4, 5);

int boton = 7; // pin donde se conecta el pulsador

boolean mostrar_temperatura = true; //variable para saber qué dato mostrar en la pantalla
int a=0;

void setup()
{

lcd.begin(16,2);

pinMode(boton, INPUT_PULLUP); // configurar el pin del pulsador como entrada con pull-up

lcd.print(" Bienvenidos "); // imprimir mensaje de bienvenida en la pantalla


lcd.setCursor(0, 1);
lcd.print(" al sistema ");

delay(1000); // esperar un segundo


lcd.clear ();

void loop() {
int temperatura = analogRead (A0); //valor de la temperatura
int luminosidad = analogRead (A1); //valor de la luminosidad

if (digitalRead(boton) == LOW) { // si se pulsa el botón


mostrar_temperatura = !mostrar_temperatura; // cambiar la variable de mostrar temperatura
delay(200); // esperar un poco para evitar rebotes en el pulsador
}
if (mostrar_temperatura) { // si se debe mostrar la temperatura
lcd.setCursor(0, 0);
lcd.print("Temperatura: ");
lcd.setCursor(0, 1);
lcd.print(temperatura(500.0/1023.0)) - 50.0);
lcd.print("C ");
} else { // si se debe mostrar la luminosidad
lcd.setCursor(0, 0);
lcd.print("Luminosidad: ");
lcd.setCursor(0, 1);
lcd.print(luminosidad);
lcd.print("% ");
}
delay(500); // esperar un poco antes de volver a actualizar la pantalla
}

You might also like