Arduino

1. Enclavamiento:

Resultado de imagen de encender 1 led arduino

#define PIN_BOTON 5
#define PIN_LED 8
byte estado_anterior = 0;
byte estado_nuevo;
byte estado_1ed = LOW ;
void setup() {
  pinMode (PIN_BOTON, INPUT);
  pinMode (PIN_LED, OUTPUT);
  }

void loop() {
 estado_nuevo = digitalRead (PIN_BOTON);
 if ((estado_anterior == 0) && (estado_nuevo == 1)) {
  cambiar_estado_led();
 }
 estado_anterior = estado_nuevo;
 delay (10);
void cambiar_estad_led == LOW){
  digitalWrite (PIN_LED, HIGH);
  estado_led = HIGH;
}
else {
  digitalWrite (PIN_LED, LOW);
  estado_led = LOW;
}
}



2. Semáforo:


Resultado de imagen de semaforo arduino

 const int pinLED= 13;      //asignar variable led como 13

void setup() {               
  pinMode(pinLED, OUTPUT);      //definir pin 13 como salida 
}

void loop() {
  digitalWrite(pinLED, HIGH);   // encender LED
  delay(600);                  // esperar un segundo
  digitalWrite(pinLED, LOW);    // apagar LED
  delay(400);                  // esperar un segundo
   digitalWrite(pinLED, HIGH);   // encender LED
  delay(300);                  // esperar un segundo
  digitalWrite(pinLED, LOW);    // apagar LED
  delay(200);                  // esperar un segundo
  digitalWrite(pinLED, HIGH);   // encender LED
  delay(600);                  // esperar un segundo
  digitalWrite(pinLED, LOW);    // apagar LED
  delay(25);                  // esperar un segundo}

3. Juego de Interruptores: 

 
#define PIN_LED_1 11
#define PIN_BOTON_1 12
#define PIN_LED_2 2
#define PIN_BOTON_2 3
#define PIN_SALIDA 7

byte game_over;

void setup (){
  pinMode (PIN_LED_1, OUTPUT);
  pinMode (PIN_BOTON_1, INPUT);
  pinMode (PIN_LED_2, OUTPUT);
  pinMode (PIN_BOTON_2, INPUT);
  pinMode (PIN_SALIDA, OUTPUT);

  game_over = 0;
  digitalWrite (PIN_LED_1, LOW);
  digitalWrite (PIN_LED_2, LOW);
  digitalWrite (PIN_SALIDA, HIGH);
  delay (random(10000));
  digitalWrite (PIN_SALIDA,LOW);
}
void loop() {
  byte boton_1 = digitalRead (PIN_BOTON_1);
  byte boton_2 = digitalRead (PIN_BOTON_2);
  if ((boton_1 == 1) && (game_over == 0)){
    digitalWrite (PIN_LED_1, HIGH);
    game_over =1;
  }
  if ((boton_2 == 1) && (game_over == 0)){
    digitalWrite (PIN_LED_2, HIGH);
    game_over =1;
  }
  delay (10);
  }

4. Display 7 segmentos:






    #define Pin_a 3
     #define Pin_b 4
     #define Pin_c 7
     #define Pin_d 6
     #define Pin_e 5
     #define Pin_f 2
     #define Pin_g 1

  void setup()
  {
    pinMode(Pin_a,OUTPUT);
    pinMode(Pin_b,OUTPUT);
    pinMode(Pin_c,OUTPUT);
    pinMode(Pin_d,OUTPUT);
    pinMode(Pin_e,OUTPUT);
    pinMode(Pin_f,OUTPUT);
    pinMode(Pin_g,OUTPUT);

  }

void loop()
{
  nueve();
  delay(1000);
  ocho();
  delay(1000);
  siete();
  delay(1000);
  seis();
  delay(1000);
  cinco();
  delay(1000);
  cuatro();
  delay(1000);
  tres();
  delay(1000);
  dos();
  delay(1000);
  uno();
  delay(1000);
  cero();
  delay(1000);
}

  void cero()
  { 
    digitalWrite(Pin_a,LOW);
    digitalWrite(Pin_b,LOW);
    digitalWrite(Pin_c,LOW);
    digitalWrite(Pin_d,LOW);
    digitalWrite(Pin_e,LOW);
    digitalWrite(Pin_f,LOW);
    digitalWrite(Pin_g,HIGH);
  }

  void uno ()
  {
    digitalWrite(Pin_a,HIGH);
    digitalWrite(Pin_b,LOW);
    digitalWrite(Pin_c,LOW);
    digitalWrite(Pin_d,HIGH);
    digitalWrite(Pin_e,HIGH);
    digitalWrite(Pin_f,HIGH);
    digitalWrite(Pin_g,HIGH);
  }

  void dos()
  {
    digitalWrite(Pin_a,LOW);
    digitalWrite(Pin_b,LOW);
    digitalWrite(Pin_c,HIGH);
    digitalWrite(Pin_d,LOW);
    digitalWrite(Pin_e,LOW);
    digitalWrite(Pin_f,HIGH);
    digitalWrite(Pin_g,LOW);
  }

   void tres()
  {
    digitalWrite(Pin_a,LOW);
    digitalWrite(Pin_b,LOW);
    digitalWrite(Pin_c,LOW);
    digitalWrite(Pin_d,LOW);
    digitalWrite(Pin_e,HIGH);
    digitalWrite(Pin_f,HIGH);
    digitalWrite(Pin_g,LOW);
  }

   void cuatro()
  {
    digitalWrite(Pin_a,HIGH);
    digitalWrite(Pin_b,LOW);
    digitalWrite(Pin_c,LOW);
    digitalWrite(Pin_d,HIGH);
    digitalWrite(Pin_e,HIGH);
    digitalWrite(Pin_f,LOW);
    digitalWrite(Pin_g,LOW);
  }

   void cinco()
  {
    digitalWrite(Pin_a,LOW);
    digitalWrite(Pin_b,HIGH);
    digitalWrite(Pin_c,LOW);
    digitalWrite(Pin_d,LOW);
    digitalWrite(Pin_e,HIGH);
    digitalWrite(Pin_f,LOW);
    digitalWrite(Pin_g,LOW);
  }

   void seis()
  {
    digitalWrite(Pin_a,LOW);
    digitalWrite(Pin_b,HIGH);
    digitalWrite(Pin_c,LOW);
    digitalWrite(Pin_d,LOW);
    digitalWrite(Pin_e,LOW);
    digitalWrite(Pin_f,LOW);
    digitalWrite(Pin_g,LOW);
  }

   void siete()
  {
    digitalWrite(Pin_a,LOW);
    digitalWrite(Pin_b,LOW);
    digitalWrite(Pin_c,LOW);
    digitalWrite(Pin_d,HIGH);
    digitalWrite(Pin_e,HIGH);
    digitalWrite(Pin_f,HIGH);
    digitalWrite(Pin_g,HIGH);
  }

   void ocho()
  {
    digitalWrite(Pin_a,LOW);
    digitalWrite(Pin_b,LOW);
    digitalWrite(Pin_c,LOW);
    digitalWrite(Pin_d,LOW);
    digitalWrite(Pin_e,LOW);
    digitalWrite(Pin_f,LOW);
    digitalWrite(Pin_g,LOW);
  }

   void nueve()
  {
    digitalWrite(Pin_a,LOW);
    digitalWrite(Pin_b,LOW);
    digitalWrite(Pin_c,LOW);
    digitalWrite(Pin_d,HIGH);
    digitalWrite(Pin_e,HIGH);
    digitalWrite(Pin_f,LOW);
    digitalWrite(Pin_g,LOW);
  }

5. Sensor Movimiento:




#define PIN_LDR A0
#define PIN_LED 2
void setup() {
  pinMode (PIN_LDR, INPUT);
  pinMode (PIN_LED, OUTPUT);
}
void loop() {
 int ldr = analogRead (PIN_LDR);
if (ldr <= 800){
  digitalWrite (PIN_LED, HIGH);
}
if (ldr>800){
  digitalWrite (PIN_LED, LOW);
}
}

6. Ultrasonido:




const int EchoPin = 5;
const int TriggerPin = 6;
const int LedPin = 13;

void setup() {
   Serial.begin(9600);
   pinMode(LedPin, OUTPUT);
   pinMode(TriggerPin, OUTPUT);
   pinMode(EchoPin, INPUT);
}

void loop() {
   int cm = ping(TriggerPin, EchoPin);
   Serial.print("Distancia: ");
   Serial.println(cm);
   delay(1000);
}

int ping(int TriggerPin, int EchoPin) {
   long duration, distanceCm;
  
   digitalWrite(TriggerPin, LOW);  //para generar un pulso limpio ponemos a LOW 4us
   delayMicroseconds(4);
   digitalWrite(TriggerPin, HIGH);  //generamos Trigger (disparo) de 10us
   delayMicroseconds(10);
   digitalWrite(TriggerPin, LOW);
  
   duration = pulseIn(EchoPin, HIGH);  //medimos el tiempo entre pulsos, en microsegundos
  
   distanceCm = duration * 10 / 292/ 2;   //convertimos a distancia, en cm
   return distanceCm;
}

7. Servomotor:





#include <Servo.h>

Servo myservo;  // crea el objeto servo

int pos = 0;    // posicion del servo

void setup() {
   myservo.attach(9);  // vincula el servo al pin digital 9
}

void loop() {
   //varia la posicion de 0 a 180, con esperas de 15ms
   for (pos = 0; pos <= 220; pos += 2)
   {
      myservo.write(pos);             
      delay(10);                      
   }

   //varia la posicion de 0 a 180, con esperas de 15ms
   for (pos = 220; pos >= 0; pos -= 2)
   {
      myservo.write(pos);             
      delay(10);                      
   }
}

8. Sensor Humedad y Temperatura:




#include <LiquidCrystal.h>

#include <LiquidCrystal.h>

#include <DHT11.h>

int pin=2;
DHT11 dht11(pin);

void setup()
   {
       Serial.begin(9600);
   }

void loop()
   {
       int err;
       float temp, hum;
       if((err = dht11.read(hum, temp)) == 0)    // Si devuelve 0 es que ha leido bien
          {
             Serial.print("Temperatura: ");
             Serial.print(temp);
             Serial.print(" Humedad: ");
             Serial.print(hum);
             Serial.println();
          }
       else
          {
             Serial.println();
             Serial.print("Error Num :");
             Serial.print(err);
             Serial.println();
          }
       delay(1000);            //Recordad que solo lee una vez por segundo
   }

9. Relé:




int rele = 8;
void setup (){
  pinMode (rele, OUTPUT);
}
void loop (){
  digitalWrite (rele, HIGH);
  delay (2000);
  digitalWrite (rele, LOW);
  delay (2000);
}


10. Coche Fantástico:






int pin2 = 2;
int pin3 = 3;
int pin4 = 4;
int pin5 = 5;
int pin6 = 6;
int pin7 = 7;
int timer = 100; // Temporizador
void setup(){
pinMode(pin2, OUTPUT); // Configuración de los PIN-es como salida
pinMode(pin3, OUTPUT);
pinMode(pin4, OUTPUT);
pinMode(pin5, OUTPUT);
pinMode(pin6, OUTPUT);
pinMode(pin7, OUTPUT);
}
void loop() {
digitalWrite(pin2, HIGH); // Enciende y apaga secuencialmente LED-s
delay(timer);
digitalWrite(pin2, LOW);
delay(timer);
digitalWrite(pin3, HIGH);
delay(timer);
digitalWrite(pin3, LOW);
delay(timer);
digitalWrite(pin4, HIGH);
delay(timer);
digitalWrite(pin4, LOW);
delay(timer);
digitalWrite(pin5, HIGH);
delay(timer);
digitalWrite(pin5, LOW);
delay(timer);
digitalWrite(pin6, HIGH);
delay(timer);
digitalWrite(pin6, LOW);
delay(timer);
digitalWrite(pin7, HIGH);
delay(timer);
digitalWrite(pin7, LOW);
delay(timer);
digitalWrite(pin6, HIGH);
delay(timer);
digitalWrite(pin6, LOW);
delay(timer);
digitalWrite(pin5, HIGH);
delay(timer);
digitalWrite(pin5, LOW);
delay(timer);
digitalWrite(pin4, HIGH);
delay(timer);
digitalWrite(pin4, LOW);
delay(timer);
digitalWrite(pin3, HIGH);
delay(timer);
digitalWrite(pin3, LOW);
delay(timer);
}

11. Potenciómetro:





int potPin = 2; // seleccionar el pin de entrada analógico para el potenciómetro
int ledPin = 13; // seleccionar el pin de salida digital para el LED
int val = 0; // variable para almacenar el valor capturado desde el sensor
void setup() {
pinMode(ledPin, OUTPUT); // declara el ledPin en modo salida
}
void loop() {
val = analogRead(potPin); // lee el valor del sensor
digitalWrite(ledPin, HIGH); // enciende LED
delay(val); // detiene el programa por un tiempo “val”
digitalWrite(ledPin, LOW); // apaga el LED
delay(val); // detiene el programa por un tiempo “val”
}

12. Contador:

int LED = 13;
int Boton = 7;
int valor = 0;
int contador = 0;
int estadoanteriorboton = 0;
void setup()
{
Serial.begin(9600);
pinMode(LED, OUTPUT); // inicializa como salida digital el pin 13
pinMode(Boton, INPUT); // inicializa como entrada digital el 7
}

void loop()
{
valor = digitalRead(Boton); // lee el valor de la entrada digital pin 7
digitalWrite(LED, valor);
if(valor != estadoanteriorboton){
if(valor == 1){
contador++;
Serial.print (contador);
Serial.write(10);
Serial.write(13);
}
}
estadoanteriorboton = valor;
}

No hay comentarios:

Publicar un comentario