Ako je samo ovo problem...
OWOut DQ, 1, [$CC, $44] ' Start temperature conversion
WaitLoop: OWIn DQ, 4, [Count_Remain] ' Check for still busy converting
If Count_Remain = 0 Then WaitLoop ' Busy
OWOut DQ, 1, [$CC, $BE] ' Read the temperature
OWIn DQ, 0, [Temperature.LowByte, Temperature.HighByte, Skip 4, Count_Remain, Count_Per_C]
Temperature = (((Temperature >> 1) * 100) - 25) + (((Count_Per_C - Count_Remain) * 100) / Count_Per_C)
if Temperature > 32767 then
Temperature= ~Temperature
V= 10000 - Temperature ' 25 C=12500 0 C=10000 -10 C=9000
else
V= 10000 + Temperature
EndIf
Točnije, onaj dio s množenjima i oduzimanjima
...to je kod za 1820 i ako je netko programirao za 18B20 ako zna šta i kako to zamijeniti i podesiti???
...evo tu je sve:
http://rapidshare(dot)com/files/183975079/termostat.rar" onclick="window.open(this.href);return false;
edit:
Još detaljnije, 9-bitna rezolucija mu vraća temperaturu u koracima od 0.5 stupnjeva, 12bitna mu vraća na 0.0625 C
upomoć
![Crying or Very sad :cry:](./images/smilies/icon_cry.gif)