It should disable interrupts around the thermometer reading - not sure if the production code actually does at the moment (it's fixed here, though). The device requires very tight (~20us or so) timings on the 1-wire serial bus otherwise things can go screwy.

You shouldn't read it too often - no more than once every few seconds too. It's not a fast device...

Hugo
(who can't work out why he didn't just use an LM77...)