ds18b20数据处理中为什么将读回来的高位和低位整合了以后乘以0.0625结果就是十进制数了?读回来的高低位不都是8位二进制数吗?怎么整合成16位了乘以0.0625就变成十进制数了?tem2是八位2进制数

来源:学生作业帮助网 编辑:作业帮 时间:2022/10/07 08:42:14
ds18b20数据处理中为什么将读回来的高位和低位整合了以后乘以0.0625结果就是十进制数了?读回来的高低位不都是8位二进制数吗?怎么整合成16位了乘以0.0625就变成十进制数了?tem2是八位2进制数

ds18b20数据处理中为什么将读回来的高位和低位整合了以后乘以0.0625结果就是十进制数了?读回来的高低位不都是8位二进制数吗?怎么整合成16位了乘以0.0625就变成十进制数了?tem2是八位2进制数
ds18b20数据处理中为什么将读回来的高位和低位整合了以后乘以0.0625结果就是十进制数了?
读回来的高低位不都是8位二进制数吗?怎么整合成16位了乘以0.0625就变成十进制数了?tem2是八位2进制数也可以直接和十进制数相乘吗?
temperature=(tem2*256+tem1)*6.25 ;
不理解……

ds18b20数据处理中为什么将读回来的高位和低位整合了以后乘以0.0625结果就是十进制数了?读回来的高低位不都是8位二进制数吗?怎么整合成16位了乘以0.0625就变成十进制数了?tem2是八位2进制数
对单片机来说,不管任何进制的数字,在单片机内部都是二进制表示的.所以能直接运算.
就算你在编程时用十进制写的100*0.0625,在运算时,单片机还是要先把十进制转换为二进制再进行计算,因此直接用二进制来进行计算是完全可以的.

256即为2^8,tem2*256即为一个16位的二进制数,其中高八位为tem2,低八位为0,再加上tem1,即把两位八进制整合成一位十六进制,0.0625即为1/16,ds18b20的数据低四位为小数位,二进制乘以十进制,结果显示十进制谢谢您的答案,不过还是不能理解其原理。这是将高低位的八位二进制数整合在一起形成一个16位二进制数的数据,不是两位八进制整合成一位16进制吧?还有,我不理解的是这个...

全部展开

256即为2^8,tem2*256即为一个16位的二进制数,其中高八位为tem2,低八位为0,再加上tem1,即把两位八进制整合成一位十六进制,0.0625即为1/16,ds18b20的数据低四位为小数位,二进制乘以十进制,结果显示十进制

收起

跳过读序号列号的操作 ds18b20w_byte(0x44); // 启动温度转换 delayus(100然后将值乘以0.0625,那么得出的值就是温度的实际值。后9位000 1111 1111ds18b20读取数据的时候是一位一位读的,先读取低字节的数据,存放在tem1变量中,那么tem1应该是八位2进制数对吧,例如10010001,高字节读回来的是00000001,高字节经过左移8位在加上低字...

全部展开

跳过读序号列号的操作 ds18b20w_byte(0x44); // 启动温度转换 delayus(100然后将值乘以0.0625,那么得出的值就是温度的实际值。后9位000 1111 1111

收起

ds18b20数据处理中为什么将读回来的高位和低位整合了以后乘以0.0625结果就是十进制数了?读回来的高低位不都是8位二进制数吗?怎么整合成16位了乘以0.0625就变成十进制数了?tem2是八位2进制数 谁能告诉我单片机从ds18b20中读取温度的原理,是怎样将ds18b20中输出的一位信号变为多位的. ds18b20 为什么读不出温度 ds18b20电路中5伏电源下电阻的作用 离心泵性能特性曲线测定实验中,数据处理时为什么需要用比例定律对离心泵的性能参数处理? DS18B20测温请问DS18B20在实际测被测物体表面温度时,应该将哪个面接触被测物体从而使测量的更准确一些呢, ds18b20温度是几位的呀 静态GPS数据处理时高程中误差的公式是什么? DS18B20的上拉电阻为什么DS18B20接I/O的引脚要接4.7k的上拉电阻!急.望各位朋友告知! STM32 ADC数据处理用STM32自带的ADC读取引脚电压值,读回来的数据怎么转换成单位为V的数值?因为没有显示设备,所以如果成功测量到电压值的话我想通过调试中查看变量这个功能来看读到的数据 密立根油滴实验的数据处理 计算机数据处理的意义? 为什么ds18b20设置为12位分辨率的时候,精度是0.0625℃?财富不够 不好意思~ DS18B20 怎么安装的,能在液体中吗,或紧贴被测物体? ds18b20时序图中,读和写数据分别代表什么意思? 我想问,在分析化学数据处理中,标准偏差公式分母问什么是n-1,而不是n呢,我不明白为什么,请从自由度的角度详细回答 ds18b20里的 温度值正负判断 为什么要判断大于6348 ,为什么取这个值?ds18b20里的 温度值正负判断 为什么要判断大于6348 ,为什么取这个值?if(tem>6348) // 温度值正负判断 ds18b20的封装有多少种?