Результат уравнения масштабирования только с целыми числами - PullRequest
0 голосов
/ 02 февраля 2020

У меня ограниченный набор инструкций, и я могу использовать только целые числа, поскольку у микроконтроллера должно быть меньше использования вычислительных ресурсов. У меня нет реализации с плавающей запятой. Если я объявлю переменную A = 0,5, то эта переменная будет считаться A = 0.

Мне нужен мой код для решения этого уравнения:

 w = 1 * (Throttle + Steering - (L1+L2)*Omega)

где Throttle, Steering и Omega являются целочисленными значениями, которые могут быть 0 или находиться в диапазоне [1500-> 2000], в то время как L1 = 406 мм и L2 = 460 мм имеют следующие значения: c.

Throttle, Steering, Omega - значения, созданные три пропорциональных оси джойстика.

Как можно масштабировать значение w , чтобы оно всегда находилось в диапазоне [0 - 1000] ? Можно ли сделать это, используя только целые числа?

PS Язык называется " MicroBasi c", и он подобен языку C.

...