Devi salvalrti il valore della variabile luminosita in un variabile appoggio, quando queste contengono valori diversi stampi su monitor seriale, altrimenti non stampi nulla
Cosa intendi se muovo poi continua all'infinito? Ogni volta che lo sposti e la map restituisce un valore differente stampi una volta la scritta, se continui a moverlo di continuo stampa di continuo.
Il tuo intento, per caso, è mica stampare solo quando il potenziometro è fermo ad un determinato valore per un certo tempo?
abs da il valore assoluto, cioè senza il segno:
abs(-5)=5
abs(7)=7
Come puoi limitare a 100 il valore letto dal potenziometro, anziché a 255? Il convertitore analogico/digitale produce valori da 0 a 1023 (10 bit) per valori della tensione in ingresso da 0V alla tensione di riferimento (solitamente impostata a 5V).
map (valorePotenziometro, 0, 1023, 0, 255);
con pochi passaggi matematici rappresenta l'escursione in ingresso, prevista da 0 a 1023, con un'escursione da 0 a 255. Cambiando i valori di uscita puoi ottenere l'escursione che desideri, eventualmente anche partendo da un valore diverso da 0. Per quello che chiedi:
int luminosita = map (valorePotenziometro, 0, 1023, 0, 100);