98 lines
2.5 KiB
Plaintext
98 lines
2.5 KiB
Plaintext
int time= 5;
|
|
int ledPin = 2;
|
|
int bomba = 9;
|
|
int sensor1 = 14;
|
|
int sensor2 = 15;
|
|
int gota = 2;
|
|
int pot=0;
|
|
int val=10;
|
|
int pul1=17;
|
|
int pul2=18;
|
|
int pul3=19;
|
|
int val1=255;
|
|
int inc=1;
|
|
int flag1=0;
|
|
int flag2=0;
|
|
int flag3=0;
|
|
int temp_ini=time;
|
|
int temp_ini_ant;
|
|
int temp_ant=0;
|
|
|
|
void setup() // run once, when the sketch starts
|
|
{
|
|
pinMode(ledPin, OUTPUT); // sets the digital pin as output
|
|
//pinMode(sensor1, INPUT);
|
|
//pinMode(sensor2, INPUT);
|
|
pinMode(pul1, INPUT);
|
|
pinMode(pul2, INPUT);
|
|
pinMode(pul3, INPUT);
|
|
pinMode(13, OUTPUT);
|
|
pinMode(bomba, OUTPUT);
|
|
//digitalWrite(sensor1, HIGH);
|
|
//digitalWrite(sensor2, HIGH);
|
|
digitalWrite(pul1, HIGH);
|
|
digitalWrite(pul2, HIGH);
|
|
digitalWrite(pul3, HIGH);
|
|
digitalWrite(13, HIGH); //Encendido
|
|
//analogWrite(bomba, val);
|
|
}
|
|
|
|
void loop() // run over and over again
|
|
{
|
|
//if ((digitalRead(sensor1)==0)&&(digitalRead(sensor2)==1)) digitalWrite(bomba, HIGH);
|
|
//else if ((digitalRead(sensor1)==1)&&(digitalRead(sensor2)==0)) digitalWrite(bomba, LOW);
|
|
|
|
|
|
/*if (digitalRead(pul1)==0) analogWrite(bomba, 255);
|
|
if (digitalRead(pul2)==0) analogWrite(bomba, 200);
|
|
if (digitalRead(pul3)==0) analogWrite(bomba, 160);*/
|
|
|
|
if ((digitalRead(pul1)==0)&&(flag1==0))
|
|
{
|
|
if ((val1+inc)>=255) val1=255;
|
|
else val1=val1+inc;
|
|
flag1=1;
|
|
}
|
|
else if(digitalRead(pul1)==1) flag1=0;
|
|
|
|
if ((digitalRead(pul2)==0)&&(flag2==0))
|
|
{
|
|
val1=150;
|
|
flag2=1;
|
|
}
|
|
else if(digitalRead(pul2)==1) flag2=0;
|
|
if ((digitalRead(pul3)==0)&&(flag3==0))
|
|
{
|
|
if (val1<=inc) val1=0;
|
|
else val1=val1-inc;
|
|
flag3=1;
|
|
}
|
|
else if(digitalRead(pul3)==1) flag3=0;
|
|
|
|
analogWrite(bomba, val1);
|
|
/*if (analogRead(gota)>800) digitalWrite(ledPin,HIGH);
|
|
else digitalWrite(ledPin,LOW);*/
|
|
if ((analogRead(1)>analogRead(0))&&((temp_ini-temp_ant) <= time))
|
|
{
|
|
//if ((temp_ini-millis())>(time-8)) digitalWrite(ledPin,HIGH);
|
|
digitalWrite(ledPin,HIGH);
|
|
temp_ini=millis();
|
|
}
|
|
else if (analogRead(1)<analogRead(0))
|
|
{
|
|
temp_ant=millis();
|
|
digitalWrite(ledPin,LOW);
|
|
temp_ini_ant = temp_ini;
|
|
}
|
|
else if ((temp_ini-temp_ant)>time)
|
|
{
|
|
digitalWrite(ledPin,LOW);
|
|
}
|
|
|
|
/*val=analogRead(pot);
|
|
digitalWrite(ledPin, HIGH); // sets the LED on
|
|
delay(2); // waits for a second
|
|
digitalWrite(ledPin, LOW); // sets the LED off
|
|
delay(val); // waits for a second*/
|
|
}
|