=( ecco il mio codice per la casa domotica che dovrò presentare a fine anno come esame maturita... singolarmente i blocchi funzionano.. mettendo lo schetch tutt' insieme non mi da risposta di nessun tipo =( sono disperato ecco codice
//SENSORI ANALOGICI
int fotoresistenza = A1;
int barriera=A3;
int gas=A2;
int lm35=A0;
float temperatura;
//ATTUATORI DIGITALI
int led1=1;//CUCINA
int led2=2;//SOGGIORNO
int led3=3;//CAMERALETTO
int led4=4;//BAGNO
int led5=5;//CORRIDOIO
int led6=6;//PALI
int led7=7;//PALI
int attiva=13;//ATTIVAZIONE ANTIFURTO
int rosso=10;//LED STATO ROSSO
int verde=11;//LED STATO VERDE
int blu=12; //LED STATO BLU
int buzzer=9; //SIRENA
int ventola=8;//VENTOLA
//LIBRERIA CONTROLLO REMOTO
#include <IRremote.h>
int receiver =0;
IRrecv irrecv(receiver);
decode_results results;
void setup() {
Serial.begin(9600);
irrecv.enableIRIn();
pinMode (led1,OUTPUT);
pinMode(led2, OUTPUT);
pinMode( fotoresistenza, INPUT);
pinMode (led3,OUTPUT);
pinMode (led4,OUTPUT);
pinMode (led5,OUTPUT);
pinMode (led6,OUTPUT);
pinMode (led7,OUTPUT);
pinMode (barriera,INPUT);
pinMode (attiva,OUTPUT);
pinMode (rosso,OUTPUT);
pinMode (verde,OUTPUT);
pinMode (blu, OUTPUT);
pinMode (buzzer,OUTPUT);
pinMode (ventola,OUTPUT);
pinMode (gas,INPUT);
pinMode (lm35,INPUT);
}
void loop() {
int Val= analogRead(fotoresistenza);
//VALORE ACCENZIONE PALI
if (Val>=600) {
digitalWrite(led6,LOW);
digitalWrite (led7,LOW);
}
else {
digitalWrite(led6,HIGH);
digitalWrite (led7,HIGH);
}
//STAMPA SERIALE CODICI TELECOMANDO
if (irrecv.decode(&results))
{
Serial.println(results.value, HEX);
irrecv.resume();
}
//CONTROLLO LUCI CASA CON TELECOMANDO
if ( results.value == 0xFF30CF ){ //TASTO1
digitalWrite(led1, HIGH);
}
if ( results.value == 0xFF10EF){ //TASTO4
digitalWrite(led1, LOW);
}
if ( results.value == 0xFF18E7 ){ //TASTO2
digitalWrite(led2, HIGH);
}
if ( results.value == 0xFF38C7){ //TASTO5
digitalWrite(led2, LOW);
}
if ( results.value == 0xFF7A85){ //TASTO3
digitalWrite(led3, HIGH);
}
if ( results.value == 0xFF5AA5){ //TASTO6
digitalWrite(led3, LOW);
}
if ( results.value == 0xFF42BD){ //TASTO7
digitalWrite(led4, HIGH);
}
if ( results.value == 0xFF4AB5){ //TASTO8
digitalWrite(led4, LOW);
}
if ( results.value == 0xFF52AD){ //TASTO9
digitalWrite(led5, HIGH);
}
if ( results.value == 0xFF6897){ //TASTO0
digitalWrite(led5, LOW);
}
//SISTEMA ALLARME
if ( results.value == 0xFFE21D){
digitalWrite (attiva,HIGH);
digitalWrite (buzzer,LOW);
digitalWrite (verde,LOW);
digitalWrite (rosso,HIGH);
digitalWrite (buzzer,HIGH);
delay(1000);
digitalWrite (buzzer,LOW);
delay (1000);
digitalWrite (rosso,LOW);
}
if (Val==0){
digitalWrite (buzzer,LOW);
digitalWrite (blu,LOW);
digitalWrite (rosso,LOW);
digitalWrite (verde,LOW);
}
if (Val<800 && Val>10){
tone (buzzer,2000);
digitalWrite (rosso,HIGH);
digitalWrite (blu,LOW);
delay(500);
tone (buzzer,1000);
digitalWrite (rosso,LOW);
digitalWrite (blu, HIGH);
delay(500);
digitalWrite(rosso, LOW);
noTone (buzzer);
digitalWrite (blu,LOW);
}
if ( results.value == 0xFFA25D){ //tasto 4 sul telecomando
digitalWrite (attiva,LOW);
}
// ALLARME FUGHE GAS CUCINA
int gasvalue=analogRead(A2);
if (gasvalue>415){
digitalWrite (verde,HIGH);
delay(500);
digitalWrite (buzzer,HIGH);
delay(500);
digitalWrite (buzzer,LOW);
}
else {
digitalWrite(verde,LOW);
digitalWrite (buzzer,LOW);
}
temperatura=analogRead (A0);
temperatura=(5 * temperatura * 100/1024);
Serial.print ("Gradi centigradi");
delay (2000);
Serial.println (temperatura);
if (temperatura>25.00){
digitalWrite (ventola,HIGH);
}
else {
digitalWrite (ventola,LOW);
}
}