also es ist so:

Intern werden negative werte so abgespeichert, dass der wertebereich halbiert wird, und das höchste bit dann als vorzeichen benutzt wird.
Wenn man den Wert nun ohne Vorzeichen betrachtet erhält man also einen ziemlich großen Wert!
In C müsstest du der Variable den Typ signed int zuweisen.
In Basic kenne ich mich da leider nicht so aus.

Nochmal zum Code: du musst die Leerzeichen bei [ code ] weglassen, das sieht dann so aus:

Code:
Hier steht der Code
EDIT: Zum I2C schau mal hier: https://www.roboternetz.de/wissen/in...com_I2C_Master