Ciao a tutti,
Ho creato un progetto che per controllo fino alla fase finale
scriveva nel monitor la posizione di un motore e la distanza percepita dal sensore a ultrasuoni.
Ora mi sono chiesto, visto che non viene utilizzata nessuna tenuta di traccia di questi dati durante il funzionamento, perché l'esito finale è dato da un buzzer e due led, è il caso di risparmiare sul processo eliminando i dati trasmessi al monitor (che in realtà non trasmette)? o si può aggiungere un controllo che se non trova la porta salta le parti?
quale è la cosa migliore da scrivere?
grazie
La migliore cosa in questi casi è usare il preprocessore ed usare le #define ...
In testa la programma definisci o NON definisci un qualche cosa, ad esempio, in testa al programma metti:
#define _TEST_
Dopo di che nel corso del programma verifichi se TEST è definito ... se SI includi delle righe se NO le escludi, il tutto, molto semplicemente con:
#ifdef _TEST_
riga che vuoi eseguita in test
riga che vuoi eseguita in test
riga che vuoi eseguita in test
...
#endif
... tutto quello che sta tra il #ifdef ed il #endif viene incluso nella compilazione solo se TEST è stato definito ... se commenti la riga con #defineTEST allora il codice NON verra incluso e neanche compilato ottimizzando sia la memoria che la velocità di esecuzione
Dopo di che nel corso del programma verifichi se TEST è definito ... se SI includi delle righe se NO le escludi, il tutto, molto semplicemente con:
Caspita! Avevo capito la logica di questa cosa ma non riuscivo a trovarne un'utilità pratica quindi mai usata. Sono bastate poche parole per aver illuminato il mio cervello trovando tante idee per i miei progetti passati e futuri. Grazie Guglielmo. ;D