PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Probleme mit DS1820 Temp Sensor



rauf81
12.11.2011, 16:45
Hallo Freunde.

Ich habe probleme den Temperatursensor DS1820 auszulesen. Gekauft bei Pollin
Meine Beschaltung:

GND auf GND
DQ an µC Pin
Vdd an GND
Zwischen DQ und +5V Pullup 4,7k

Ich lese immer den Wert 85 aus...

Bei der Beschaltung wie vorgeschlagen auf RN Wissen.

GND auf GND
DQ an µC Pin
Vdd an +5V
Zwischen DQ und +5V Pullup 4,7k

Tut sich nichts.

Mein Bascom Code

$regfile = "m16def.dat"
$crystal = 16000000
$hwstack = 40
$swstack = 16
$framesize = 32

Config 1wire = Portb.1



Config Lcdpin = Pin , Db4 = Portb.5 , Db5 = Portb.4 , Db6 = Portb.3 , Db7 = Portb.2 , E = Portb.6 , Rs = Portb.7
Config Lcd = 16 * 2
Cursor Off
Cls

Dim Sc(9) As Byte
Dim T As Integer


Do
Cls

Locate 1 , 1
Lcd "Tempmessung"

1wreset
1wwrite &HCC
1wwrite &H44

Waitms 50

1wreset
1wwrite &HCC
1wwrite &HBE
Sc(1) = 1wread(9)


T = Makeint(sc(1) , Sc(2))

T = T / 2



Locate 2 , 1
Lcd T
Waitms 250



Loop

Weiß leider nicht mehr weiter wo mein Fehler liegt und hoffe Ihr könnt mir dabei helfen.

for_ro
12.11.2011, 17:47
Wahrscheinlich musst du dem Sensor nur mehr Zeit lassen.
Also mal ein Waitms 1000 nach dem Convert_Temp.
Das CLS würde ich wenn überhaupt dann direkt vor den Locate Befehl setzen.
Wenn du 3 Leitungen zum Sensor legen kannst, dann nimm die Beschaltung von RN Wissen.

rauf81
12.11.2011, 18:15
Dankeschööööön :-)

Die Zeit war zu knapp.

Sensor Läuft

iele Grüße Flo

Frank
22.01.2013, 11:31
Dein Code dürfte aber bei Minustemperaturen falsche Werte liefern.
Alternativen Code in der Codesammlung: https://www.roboternetz.de/community/threads/60657-Beispielprogramm-f%C3%BCr-DS1820-Temperatursensor-und-RN-AVR-Universal