Non capisco if else

Buongiorno a tutti,
non riesco a capire come funzionano le istruzioni if else. In teoria ci sono ma poi scrivo uno sketch semplice semplice e mi confondo:

int i=0;
void setup() {
 
Serial.begin(9600);

}

void loop() {
 
  Serial.print ("i = ");
  Serial.println(i);
  delay(500);

if (i=0){
  Serial.println("start");
  delay(2000);
}
else {
  Serial.println("stop");
  delay(2000);
}
}

perchè il monitor seriale mi restituisce "stop" anche se io ho detto se i=0 scrivi start?

Ciao.

Quando scrivi (i=0) fai una assegnazione,
quando scrivi (i ==0) fai un confronto.

Pippo72

Perché oltre a IF/ELSE è bene che studi anche la differenza che c'è tra = ed == :wink:

Guglielmo

>Pippo72: siamo alle solite ... invece di dare "pappa fatta" non potresti invece consigliare cosa studiare ? ::slight_smile:
Ti ricordo il REGOLAMENTO, punto 16.13 ... ed il reference è un ottima cosa da consigliare :wink:

Grazie! ora ci sono!