Ich habe dir mal den 1. Code so abgeändert, wie ich denke dass er laufen müsste. Kann ich aber nicht ausprobieren.
Code:
Dim Dsid(24) As Byte
' Die Adresse meines DS1820 die ich vorher ermittelt habe
Dsid(1) = &H10 : Dsid(2) = &H99 : Dsid(3) = &H4E : Dsid(4) = &H71 : Dsid(5) = &H01 : Dsid(6) = &H08 : Dsid(7) = &H00 : Dsid(8) = &H6D
'^= 1
Dsid(9) = &H10 : Dsid(10) = &H3D : Dsid(11) = &H48 : Dsid(12) = &H71 : Dsid(13) = &H01 : Dsid(14) = &H08 : Dsid(15) = &H00 : Dsid(16) = &H71
'^= 2
Dsid(17) = &H10 : Dsid(18) = &H4D : Dsid(19) = &H47 : Dsid(20) = &H71 : Dsid(21) = &H01 : Dsid(22) = &H08 : Dsid(23) = &H00 : Dsid(24) = &H86
'^= 3
Dim Sc(9) As Byte
Dim Sc2(9) As Byte
Dim T As Byte                                      'kein Integer mehr
Dim T1 As Integer
Dim I As Byte
Dim Halb As Byte
Dim Halb2 As Byte
Dim Ds1820 As Byte
Dim Ds1820_2 As Byte
Cursor Off

Do
  ' Alle angeschlossenen DS1820 zum Messen veranlassen
   1wreset
   1wwrite &HCC
   1wwrite &H44
   Waitms 750
   ' Den gewünschten Sensor auswählen
   1wverify Dsid(1)
   ' Kommando READ SCRATCHPAD
   1wwrite &HBE
   Sc(1) = 1wread(9)
   If Sc(9) = Crc8(sc(1) , 8) Then
      T = Sc(1)
      If Sc(2) > 0 Then
         Print "-";
        T = 256 - T
      End If
      T = T / 2
      locate 1,1
      If Sc(2) > 0 Then lcd "-";
      lcd T ;
      If Sc(1).0 = 1 Then
         lcd ".5°C"
      Else
         lcd ".0°C"
      End If
   End If
   ' Ausgabe alle 0,75 Sekunden
   Waitms 750
   'usw... für 3 Sensoren.
loop
Probier es mal aus.