ds16b20 имеет минимальную дискретность 1/16 градуса. А задержку - можно сначала давать команду выполнить измерение, а затем - считывать результат. К примеру, можно выдать команду на измерение сразу всем датчикам, висящим на линии, а через секунду считать все результаты, сразу выдав команду на следующее измерение. В результате код будет выполняться быстро.