agrobot_base/Firmware/Modulos/Utils.h

19 lines
499 B
C

#ifndef Utils
#define Utils
float fmap(float value, float fromLow, float fromHigh, float toLow, float toHigh)
{
// Verifique se o valor está fora dos limites e limite-o aos limites.
if (value < fromLow) {
value = fromLow;
} else if (value > fromHigh) {
value = fromHigh;
}
// Calcule o valor mapeado.
float scale = (value - fromLow) / (fromHigh - fromLow);
float mappedValue = scale * (toHigh - toLow) + toLow;
return mappedValue;
}
#endif