Nu till det knixiga, ska man dra av de 0,5 när man kör med tiondelarna eller hur är det egentligen tänkt? Jag anser att man måste utgå från -0.5 när man räknar negativt.
Decimalerna är ju lite lustiga iom. att de omfattar ett värde på -0.2 -> 0.9 alltså måste ju tex -0,2°C tas från den "positiva" sidan samtidigt som -0.3°C tas från den "negativa" sidan. Alltså måste decimalerna (=COUNT_REMAIN) gå åt andra håller när det är minus, görs detta automagiskt i DS1820 eller är det något man måste programmera för?
Dvs ska denna "avvikelse" gå åt tvärtom håll mot vad det gör när man ligger på den positiva sidan eller är det som formeln säger: Temperature=-0,25+((16-COUNT_REMAIN)/16)
Kod: Markera allt
TEMPERATURE DIGITAL OUTPUT DIGITAL OUTPUT
( C) (BINARY) (HEX)
+85.0 0000 0000 1010 1010 00AAh
+25.0 0000 0000 0011 0010 0032h
+0.5 0000 0000 0000 0001 0001h
0 0000 0000 0000 0000 0000h
-0.5 1111 1111 1111 1111 FFFFh
-25.0 1111 1111 1100 1110 FFCEh
-55.0 1111 1111 1001 0010 FF92h

Edit:Databladet.