It took me quite a while to get my DS18B20P (aka. DS18B20P-PAR) to work properly and give me nice readable Celsius values. I finally got it all to work while keeping the code somewhat clean by using a slightly modified OneWire library and wrapping my own library around it.
I couldn’t find any other way to do this, but I wanted to give you guys access to my code, and my changes to the OneWire library (I already sent them over email to the guy who released the latest version). I released my code under Creative Commons Attribution-ShareAlike 3.0 Unported License, the OneWire library is using some different license (explained in the OneWire.cpp source).
You can find the code, with an example implementation at http://lietu.net/index.php/releases under the “DS18B20P Library” section. You need to wire your sensor as in the diagram at the top of http://forums.fungizmos.com/viewtopic.php?f=6&t=2 or in the datasheet page 3 at http://datasheets.maxim-ic.com/en/ds/DS18B20-PAR.pdf
I also attached the code here, so you can access it in case my homepages are down…
ds18b20p.zip (11.3 KB)