Stap 4: Codering beoordeling
Laten we praten over de map()-functie
Dit is de indeling van de functie map():
kaart (waarde, fromLow, fromHigh, toLow, toHigh)
Een getal tussen een bereik en andere re-kaarten. Dat wil zeggen, een waarde van fromLow zou krijgen toegewezen aan toLow, een waarde van fromHigh naar toHigh, waarden in-between waarden daar tussenin, enz.
Parameters van map():
waarde: het nummer toewijzen
fromLow: de ondergrens van het huidige bereik van de waarde
fromHigh: de bovengrens van de huidige waardebereik
toLow: de ondergrens van het doelbereik van de waarde
toHigh: de bovengrens van de waarde van streefzone
Merk op dat de "ondergrens" van beide bereik groter of kleiner dan de "bovengrens" worden kan zodat de map() functie kan worden gebruikt om te keren van een bereik van getallen, bijvoorbeeld
y = kaart (x 1, 50, 50, 1);
De functie verwerkt ook negatieve getallen goed, zodat dit voorbeeld
y = kaart (x 1, 50, 50,-100);
Draaien teruggaan naar ons voorbeeld,
int outputValue = kaart (sensorValue, 0, 1023, 0, 255);
Wat we willen is aan het krimpen van het waardebereik van 0 ~ 1023 (vanaf analoge waarde) op 0 ~ 255 (naar PWM-uitgang)