Hallo Florian,
so lese ich den DS18S20 aus und rechne um:
In Grad steht die umgerechnete Temperatur. Störe Dich nicht an de Parametern hinter den 1Wire-Befehlen, die geben nur an welcher Port und welcher Pin benutzt werden soll. Denke daran, es müssen 9 Byte ausgelesen werden.Code:Sub 18s20_auslesen 1wreset Pinc , F ' Reset 1wwrite Skip_rom , 1 , Pinc , F ' Chip ansprechen 1wwrite Read_ram , 1 , Pinc , F ' Befehl zum Auslesen des Rams Bd(1) = 1wread(9 , Pinc , F) ' 9 Bytes lesen 1wreset Pinc , F ' Reset Temp = Bd(2) Shift Temp , Left , 8 Temp = Temp + Bd(1) If Temp > $f000 Then Temp = $ffff - Temp Temp1 = Temp + 1 Grad = Temp1 * -0.0625 Else Grad = Temp * 0.0625 ' Auflösung 12 Bit End If End Sub
Ich hoffe, es hilft Dir weiter.
mfg
AVRWALLI







Zitieren

Lesezeichen