Disipador con potenciómetro
int fanPin = 6;
int led1Pin = 2;
int led2Pin = 3;
int led3Pin = 4;
int buttonPin = 10;
int fanSpeed = LOW;
int led1State = LOW;
int led2State = LOW;
int led3State = LOW;
void setup() {
pinMode(fanPin, OUTPUT);
pinMode(led1Pin, OUTPUT);
pinMode(led2Pin, OUTPUT);
pinMode(led3Pin, OUTPUT);
pinMode(buttonPin, INPUT_PULLUP);
}
void loop() {
if (digitalRead(buttonPin) == LOW) {
fanSpeed = fanSpeed + 1;
if (fanSpeed > 3) {
fanSpeed = LOW;
}
switch (fanSpeed) {
case 0:
digitalWrite(fanPin, LOW);
digitalWrite(led1Pin, LOW);
digitalWrite(led2Pin, LOW);
digitalWrite(led3Pin, LOW);
break;
case 1:
digitalWrite(fanPin, HIGH);
digitalWrite(led1Pin, HIGH);
digitalWrite(led2Pin, LOW);
digitalWrite(led3Pin, LOW);
digitalWrite(led4Pin, LOW);
break;
case 2:
digitalWrite(fanPin, HIGH);
digitalWrite(led1Pin, HIGH);
digitalWrite(led2Pin, HIGH);
digitalWrite(led3Pin, LOW);
break;
case 3:
digitalWrite(fanPin, HIGH);
digitalWrite(led1Pin, HIGH);
digitalWrite(led2Pin, HIGH);
digitalWrite(led3Pin, HIGH);
break;
}
delay(1000); // Debounce delay
}
}
Comentarios
Publicar un comentario