Problema uscita analogica con LED

Ciao Ragazzi,

volevo sottoporvi questo fatto, per cercare di giungere a una soluzione.
Ho realizzato un semplice programma di prova, con un fototransistor che rileva la
quantità di luce che lo colpisce e di conseguenza mi accende al massimo o spegne un Led.
Il mio problema è che dichiarando uscita Pwm a valore 0 (Zero), il led non si spegne completamente come dovrebbe essere.

Vi sottopongo il codice:

int Lettura;
int Light = 3;


void setup() {
  Serial.begin (9600);
  pinMode (Light, OUTPUT);
  
}

void loop() {
Lettura = analogRead (A0);
Serial.println (Lettura);
  
  
if (Lettura <=3);
analogWrite (Light,255);

if (Lettura >=10)
analogWrite (Light,0);

}

Sapete darmi qualche indicazione?

Grazie mille!!

cancella

pinMode (Light, OUTPUT);

Ho cancellato dal programma la stringa che mi hai consigliato.. ma il problema persiste allo stesso modo. Il Led rimane debole debole ma acceso..
Non saprei.. altri consigli ragazzi?

void loop() {
Lettura = analogRead (A0);
if (Lettura <=3);
analogWrite (Light,255);
if (Lettura >=10)
analogWrite (Light,0);
}

c’é un “;” di troppo dopo il primo if.

Ciao Uwe

Eliminato il ";" di troppo e il problema si è risolto. Ringrazio tutti gli intervenuti.. e mi scuso per questo errore banale, ma sono alle prime armi.

Grazie mille

uwefed:
cancella

pinMode (Light, OUTPUT);

Ciao Uwe!
Scusa, ma proprio non capisco questo tuo suggerimento...

Non serve se usi il pin come analogWrite();
Ciao Uwe

Ah. Non lo sapevo!
Grazie.