Étape 4: Examen de codage
Nous allons parler de la fonction map()
C’est le format de la fonction map() :
carte (valeur, fromLow, fromHigh, toLow, multi-amplificateur)
Remappe un nombre d’une plage à l’autre. Autrement dit, une valeur de fromLow obtiendrait mappé à toLow, une valeur de fromHigh à multi-amplificateur, entre les deux valeurs à des valeurs intermédiaires, etc..
Paramètres de map() :
valeur : le numéro de carte
fromLow : la limite inférieure de la gamme actuelle de la valeur
fromHigh : la limite supérieure de la gamme actuelle de la valeur
toLow : la limite inférieure de la fourchette cible de la valeur
Multi-amplificateur : la limite supérieure de la fourchette cible de la valeur
Notez que la « borne inférieure » de chaque plage peut être plus grand ou plus petit que les « limites supérieures », donc la fonction map() peut servir à inverser une plage de nombres, par exemple
y = carte (x, 1, 50, 50, 1) ;
La fonction gère également les nombres négatifs, Eh bien, pour que cet exemple
y = carte (x, 1, 50, 50, -100) ;
Revenir à notre exemple,
int outputValue = carte (sensorValue, 0, 1023, 0, 255) ;
Notre souhait est de réduire la plage de valeurs de 0 ~ 1023 (à partir de la valeur analogique) à 0 ~ 255 (vers sortie PWM)