>>132
皆が指摘しているように、それだけでは無いと思うがな。
おそらく君が出してきたソースにも色々間違いがあるんだろうけど。

ソース見る限りズブの初心者のようだが、問題点を理解しているか?

まず用語がおかしいので先にこれを修正しておくが、普通は
float scale = width / max; だ。shiftは足すもの、scaleが掛けるもの。coeffは係数=無次元数だろ。
読んだときに違和感がないようにしろというのはアプリケーションハンガリアンの思想だが、
これを採用するかはともかくとして、思想自体は当たってる。
そして通常は max で割る。(ただしこれについては、意図的に逆数にすることもあるが)
あと変数を全部大文字にするのはマジで止めろ。そんなことしてる奴は居ないだろ。

それで、君の「キャスト忘れ」についてはscaleが0に張り付くなり、整数の階段状になるので、
「動作を見た瞬間にどこがバグっているか分かる」タイプのバグになる。
追跡するにも苦労しないし、そもそも追跡の必要すらない。
当然、疲れもしない。マジで10分で修正して、てへぺろ、だ。

だからそのバグを取るのに手こずること自体がおかしい。
そしてその遠因になっているのはその意味不明なネーミングだ。
まずはそこからだと思うぜ。

(-128 > 0)が真になることはないので、確実に君が何か勘違いしている。
先生/先輩/上司その他、見てもらえる人がいるのなら、
君のソースのその酷さも含めて見てもらった方がいい。
そういう人がいなくて君が一人でマイコンを動かそうとしてるのなら、今の君では無理だと思うぜ。

Python馬鹿なら、最近はPythonが動くマイコンもあると聞くので、環境を変えた方がいい。
マイコン環境のCは、色々と貧弱な分、PC環境のCより難しい。
今の君ではPC環境のCでも無理がある。
状況聞く限り、俺は>>135の予想が正しいと思う。