User manual

<form method="GET">
<input type="color" name="rgb" onchange="this.form.submit()"><BR>
</form>
La couleur choisie est maintenant transmise sous la forme /?rgb=%23,suivie de
six autres caractères. Le terme %23 signifie qu’il s’agit d’une hexadécimale. Pour
la couleur blanche l’URL est donc :
[IP]/?rgb=%23ffffff
Le contrôleur doit maintenant extraire les couleurs respectives de la DEL de ce
nombre hexadécimal, ce qui se passe dans la partie suivante de la fonction loop :
if (esp8266.findUntil("?rgb=", "\n"))
{
String hexstring = esp8266.readStringUntil(‚ ‚);
long number = (long) strtol( &hexstring[3], NULL, 16);
int r = number >> 16;
int g = number >> 8 & 0xFF;
int b = number & 0xFF;
analogWrite(RED, r);
analogWrite(GREEN, g);
analogWrite(BLUE, b);
}
Par la fonction strtol() le texte reçu derrière %23 devient d’abord un longnombre et
est ensuite converti par manipulation de bits en trois valeurs d’octets. Ceux-ci sont
finalement transmis par la fonction analogWrite()-à la DEL RVB.