да верно, он сначало на секунду показывает 85 градусов... потом мериет текущую, а при нагреве свыше 32 градусов показывает 9999, смотрел библиотеку: float ds18b20_temperature(unsigned char *addr) { unsigned char resolution; if (ds18b20_read_spd(addr)==0) return -9999; resolution=(__ds18b20_scratch_pad.conf_register>>5) & 3; if (ds18b20_select(addr)==0) return -9999; w1_write(0x44); delay_ms(conv_delay[resolution]); if (ds18b20_read_spd(addr)==0) return -9999; w1_init(); return (*((int *) &__ds18b20_scratch_pad.temp_lsb) & ((int) bit_mask[resolution]))*0.0625; }