Lab_interaccio/2016/ding/ding.ino

53 lines
1.3 KiB
Arduino
Raw Permalink Normal View History

2025-02-25 21:29:42 +01:00
int fan[8] = {9, 8, 7, 6, 5, 4, 3, 2};
boolean fan1,fan2,fan3,fan4;
void setup() {
Serial.begin(57600);
for (int i=0; i<8; i++)
{
pinMode(fan[i], OUTPUT);
digitalWrite(fan[i], HIGH);
}
randomSeed(300);
}
void sequence(boolean fan1, boolean fan2, boolean fan3/*, boolean fan4*/, unsigned long time_)
{
digitalWrite(fan[0], fan1);
digitalWrite(fan[1], fan2);
digitalWrite(fan[2], fan3);
// digitalWrite(fan[3], fan4);
delay(time_);
}
boolean repeat = true;
void loop() {
// while((fan1&&fan2&&fan3&&fan4)||((!fan1)&&(!fan2)&&(!fan3)&&(!fan4))||repeat)
while((fan1&&fan2&&fan3)||((!fan1)&&(!fan2)&&(!fan3))||repeat)
{
if (random(0,1000)<500) fan1=false;
else fan1=true;
if (random(0,1000)<500) fan2=false;
else fan2=true;
if (random(0,1000)<500) fan3=false;
else fan3=true;
// if (random(0,1000)<500) fan4=false;
// else fan4=true;
repeat = false;
}
repeat = true;
unsigned long time_ = random(4000,15000);
//unsigned long time_ = 100;
Serial.print(fan1);
Serial.print(' ');
Serial.print(fan2);
Serial.print(' ');
Serial.print(fan3);
Serial.print(' ');
// Serial.print(fan4);
// Serial.print(' ');
Serial.println(time_);
sequence(fan1, fan2, fan3/*, fan4*/, time_);
}