Utilizzo "intelligente" di serial.print

non ho capito cosa intendi dire. Cmq si immagino che true o 1 e viceversa siano la stessa cosa

Lascia perdere la variabile. Usa solo da #define.

@fratt …in arduino, come riportato nel reference, false e 0 (zero) sono la stessa cosa…invece true si “traduce” in un qualsiasi numero diverso da 0 (zero)…con relativi problemi se non si sta attenti.

@droidprova …la direttiva #define istruisce il preprocessore, che legge la definizione della MACRO, che ogni volta che ne incontra il nome all’interno del file sorgente SOSTITUISCE al simbolo il corrispondente valore…tutto questo a compile time…e non a runtime…aggiungere una varialbile non ha senso…c’è già la #define che fa quel che deve fare ed è, dal mio punto di vista, più chiara.

Questo lo so. Polemizzavo solo sul fatto che sostituire true con false nella variabile implica premere almeno 4 pulsanti, mentre sostituire 1 con 0 nella define te ne fa premere solo 1.

Grazie Orso, quindi a programma compilato e riversato nel micro, al fine di stampare righe utili al debug, non è possibile cambiare lo stato di DEBUG e convertirlo da 0 a 1?

Grazie

No, in questo modo non è possibile. Dovresti invece vincolare il print allo stato di una variabile, ma questo comporta che tutto ciò che riguarda il debug viene compilato in ogni caso.
Ma nel momento che passi un programma dallo stato di “debug” a quello di “produzione”, non ha molto senso tenere in memoria funzionalità che non servono.

No

true si traduce in 1
È una macro definita dallo standard di C

È in ‘ingresso’ che diverso da 0 è sinonimo di true

Ok grazie a tutti!

hai ragione…non che servisse la mia conferma…