Hallo
Ich habe ein Problem mit einem LM75 an einem AT90S2313.
Den folgenden Code hab ich hier im Forum gefunden (von Frank glaub ich) und hab ihn auf den AT90S2313 umgeschrieben. Der µC soll die Temperatur auslesen und dann auf dem LCD anzeigen.

Code:
$regfile = "2313def.dat"
$crystal = 3686400
config LCD = 16 * 1

Declare Sub Showtemperatur()

Const Lm75slavewrite = &H90
Const Lm75slaveread = &H91
Dim Lm75high As Byte
Dim Lm75low As Byte
Dim Temperatur As Integer
Dim Nachkommastelle As String * 2


     I2cinit
Start:
     Showtemperatur
     Wait 2
     Goto Start


 Sub Showtemperatur()
   I2cstart
   I2cwbyte Lm75slaveread
   I2crbyte Lm75high , Ack
   I2crbyte Lm75low , Nack
   I2cstop

   If Lm75high > 127 Then
      Temperatur = Lm75high And 127
      Temperatur = Not Temperatur
      Incr Temperatur
   Else
      Temperatur = Lm75high
   End If

   Lm75low = Lm75low And 128
   If Lm75low > 0 Then
       Nachkommastelle = ",5"
   Else
      Nachkommastelle = ""
   End If

   Locate 1 , 1
   Lcd Temperatur ; Nachkommastelle
End Sub
Aber alles was ich auf dem LCD sehe ist ein undefinierbares zeichen (sieht aus wie so nen chinesisches schriftzeichen ).
Ich hab den LM75 so angeschlossen:

+Ub = +5V
A0 = leer
A1 = leer
A2 = leer
I2CData = SDA port
I2CTakt = SCL port
OS = leer
GND = GND

Ich hoffe ihr könnt mir helfen
Vielen Dank, Markus