Ho compilato uno schetch con arduino utilizzando due led, un pulsante e un potenziometro.
In pratica quando il pulsante è premuto il led 1 lampeggia con un ritardo proporzionale al valore del potenziomentro, vicveversa il led 1 sarà spento e lampeggerà il led 2.
Il problema è che il secondo led, quello collegato al pin 9, si accende con una scarsissima intensità, come se ci fosse una grossa resistenza in serie (in realtà ho inserito una resistenza da 100ohm per proteggere il led). Non riesco a capire!!! E' come se avessi attivato una resistenza di pull-up interna. Il led 1 invece si accende con la giusta lminosità.
Qual è il problema?
p.s.: ho messo una resistenza da 10k alla massa del pulsante.
allego il codice (se ci riesco) :
//Utilizzo di un pulsante e di un potenziometro per accendere e regolare il lampeggio di due led
//Francesco Scimonelli
#define led_1 13 //utilizza il pin 13 per il led_1
#define led_2 9 //utilizza il pin 9 per il led_2
#define btn_1 11 //utilizza il pin 11 per il pulsante
int in=0; //memorizza lo stato del pulsante
int pot=0; //memorizza lo stato del potenziometro
void setup(){
pinMode(led_1, OUTPUT);
pinMode(led_2, OUTPUT);
pinMode(btn_1, INPUT);
}
void loop(){
pot = analogRead (A3); //leggi il valore del potenziometro sul pin A3
in = digitalRead(btn_1); //leggi lo stato del pulsante sul pin 11
if (in == HIGH){ //se il pulsante è premuto
digitalWrite(led_1,HIGH); //accendi il led_1
delay(pot); //ritardo equivalente al valore del potenziometro
digitalWrite(led_1,LOW); //accendi il led_2
delay(pot); //ritardo equivalente al valore del potenziometro
}
else{ // se il pulsante è a riposo
digitalWrite(led_2, HIGH); //accendi il led_2
delay(pot); //ritardo equivalente al valore del potenziometro
digitalWrite(led_2, LOW); //spegni il led_2
delay(pot); // ritardo equivalente al valore del potenziometro
}
}