Go Down

Topic: Poner un sonido dependiendo el valor de entrada de LDR (Read 87 times) previous topic - next topic

Joels

Hola buenas

Estoy haciendo un proyecto con arduino en el que con un LDR dependiendo del valor se enciende una LED y con un buzzer hace un sonido cada vez que se enciende un LED y al encenderse 5 leds que suene una pequeña canción, la parte de los led ya la tengo solucionada, me falta la de la melodía, si alguien me puede hacer el favor de echarme una mano.

Este es el código que he hecho y que me encienden los leds acompañado de la librería de las melodías

Gracias

Code: [Select]
#include "pitches.h"   
int led1=2;
int led2=3;
int led3=4;
int led4=5;
int led5=6;
int buzzer=8;
int pinLDR = A1;
int valorLDR = 0;
int tmp=0;
int contador=0 ;
int luz;

void setup() { 
  pinMode(led1, OUTPUT); 
  pinMode(led2, OUTPUT);
  pinMode(led3, OUTPUT);
  pinMode(led4, OUTPUT);
  pinMode(led5, OUTPUT);
  pinMode(buzzer, OUTPUT);   
  Serial.begin(9600);       
  } 

 void loop(){   
 
 valorLDR=analogRead(pinLDR);
 delay(500);
 Serial.println(valorLDR); 
 if (valorLDR > 800 && tmp == 0)
  {
  contador=contador + 1 ;
   Serial.println(contador);
  tmp=1;
  Serial.println("estoy dentro");
  Serial.println("ahora tmp");
  Serial.println(tmp);
  }   
 if (valorLDR  < 600 && tmp == 1 )
 {
  Serial.println("estoy dentro2");
 tmp=0;
    if (contador == 5)
    {delay(1000);
    contador = 0;
 }
 }
 
 if (contador == 1 )
{ digitalWrite(led1, HIGH);
 Serial.println("estoy dentro");
}

 if (contador == 2 )
{ digitalWrite(led2, HIGH);}
 
 if (contador == 3 )
{ digitalWrite(led3, HIGH);} 

 if (contador == 4 )
{ digitalWrite(led4, HIGH);}

   if (contador == 5 )
{ digitalWrite(led5, HIGH);
digitalWrite(buzzer, LOW);


 if (contador == 0 ){
 digitalWrite(led1, LOW);
digitalWrite(led2, LOW);
digitalWrite(led3, LOW);
digitalWrite(led4, LOW);
digitalWrite(led5, LOW);
digitalWrite(buzzer, LOW);

 }

 } 

Go Up