OK ich poste nochmal den abgeänderten Code. Habe versucht das was von mir ist zu kommentieren.
Ich hab jetzt ausserdem mal alles unötige weggelassen, weil der LM75 ja im Templesemodus startet müsste ja eigentlich Leseadresse Senden + 2x Lesen ausreichen. Ich hab mir auch schon mehrere andere Codes die nicht für die C-Control sind angesehen, aber leider werde ich daraus auch nicht schlauer. Ich bekomme als Ausgabe einfach wild wechselde Zahlen 
Code:
DEFINE Daten byte
define Zaehler byte
define N byte
define i byte
define Mask byte
define SDA port[15]
define SCL port[16]
SDA = OFF
SCL = OFF
gosub I2C_stop
#schleife
gosub I2C_start
Daten = 145 'Adresse(zum Lesen) schreiben
gosub I2C_schreiben
gosub I2C_lesen 'MSB Lesen
gosub acknowlege
print Daten; 'MSB Ausgeben
Print "-"; '"MSB-LSB" (nur zum testen)
gosub I2C_lesen 'LSB lesen
gosub NoAcknoledgement
print Daten; 'LSB ausgeben (schon klar das die Ausgabe
print 'von LSB nicht richtig ist aber ich teste ja nur)
gosub I2C_stop
pause 200
GoTo schleife
#I2C_start
SDA = OFF
SCL = OFF
Return
#I2C_stop
SDA = OFF
SCL = ON
SDA = ON
Return
#I2C_schreiben
Mask = &H80
#OUTSHIFT
SDA=(Daten and Mask)
SCL = ON
SCL = OFF
Mask = Mask shr 1
if Mask <> 0 then goto OUTSHIFT
'---- 9. Takt für ACKN -------------------
deact SDA
SCL = ON
SCL = OFF
i = not SDA 'ackn?
SDA= OFF
Return
#I2C_lesen
deact SDA
Daten = 0
Mask = &H80
#INSHIFT
SCL = ON
if SDA = ON then Daten = (Daten or Mask)
SCL = OFF
Mask = Mask shr 1
if Mask <> 0 then goto INSHIFT
Return
#acknowlege
SDA = OFF
TOG SCL
TOG SCL
Return
#NoAcknoledgement
SDA = ON
TOG SCL
TOG SCL
Return
END
Lesezeichen