funzione if

salve, mi potete spiegare perche cosi non mi scrive hhfhfhfhf sul lcd (16 x 2)

 if(lux < 100) {  // se e buio
    if(ff = 1 ) {
      lcd.setCursor(0, 1);   //in basso
      lcd.print("modalita notte  "); //scrivi
      delay(100);
      lcd.setCursor(0, 1);
      lcd.print("fdghdfhdh ");      
    }
  }

e invece se tolgo il delay me lo scrive

 if(lux < 100) {  // se e buio
    if(ff = 1 ) {
      lcd.setCursor(0, 1);   //in basso
      lcd.print("modalita notte  "); //scrivi 
      lcd.setCursor(0, 1);
      lcd.print("fdghdfhdh ");
      delay(100);

… attento che probabilmente c’è un errore nel codice :

if(ff = 1) {

… se vuoi che IF sia vero quando ff è uguale a 1 allora devi scrivere :

if(ff == 1) {

… altrimenti assegni solamente il valore 1 ad ff e la IF è sempre vera … :wink:

Guglielmo

P.S. : questo non risponde alla tua domanda … ma ti evidenzia un errore nel codice

Oltre il problema con il = o == col pezzettino di codice che ci hai dato non é possibile capire il problema.
In linea d massima questi comportamenti strani si ha quando:

  • la RAM é piena
  • usi in modo errato dei pointer ( punta a una parte di memoria sbagliata)
  • usi indici di array troppo grandi (indici piú grandi del array)
    Per favore dacci lo sketch intero.
    Ciao Uwe