Hallo
Ich hab ein kleines Problem mit einem DS 1631 der am ic2 hängt
mit meinem Code gibt er mir immer 25 aus egal ob der temperaturfühler erwärmt oder abgekühlt wird warum?
KANN MIR JEMAND HELFEN?Code:$regfile = "m16def.dat"
$framesize = 60
$swstack = 60
$hwstack = 60
$crystal = 8000000
$baud = 4800
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
Config Scl = Portc.0
Config Sda = Portc.1
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
Print Temperatur ; Nachkommastelle
End Sub