ds18b20小数部分是如何计算的?

来源:百度知道 编辑:UC知道 时间:2024/05/10 07:29:35
请教:为什么小数值是这么算的?谢。
unsigned char code ditab[16] = {0x00,0x01,0x01,0x02,0x03,0x03,0x04,0x04,
0x05,0x06,0x06,0x07,0x08,0x08,0x09,0x09} ;
display[4]=tem&0x0f;
display[0]=ditab[display[4]];
tem是ds18b20测得的温度值。

如图,0.5摄氏度是由1000表示的,那么1摄氏度就是用10000表示的,当 display[4]=tem&0x0f;  取得后四位后,除以10000(16)就是0000 0000 0000 0001所表示的大小,把他们平均分在小数里就可以了,1/16=0.0625,这也就是很多人用乘0.625的原因。讲到这里应该明白了吧~不会的话再联系~O(∩_∩)O~