Se devi ottenere solo i tre colori potresti usare un sensore di temperatura e lo leggi da un pin analogico, crei una mappa con la funzione map di tre
int val = analogRead (0);
mappa = map (val, 0, 1023, 0, 2);
e usi uno switch case con lo stesso nome della mappa di modo da sfruttare il risultato della mappa e in ogni case gli scrivi il valore in pwm
switch (mappa) {
case 1:
analogWrite(led_rosso,255)
break;
case 2:
analogWrite(led_verde,255)
break;
ecc.
}
Ovviamente è un'idea.....poi mettici del tuo
