久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 4114|回復: 2
收起左側

單片機溫度傳感器代碼有幾句看不懂temp=tt*10+0.5

[復制鏈接]
ID:516297 發表于 2019-4-19 23:29 | 顯示全部樓層 |閱讀模式
DS18B20中獲取溫度中tt=temp*0.0625;temp=tt*10+0.5;這兩句什么意思啊,為什么要有temp=tt*10+0.5??這時候tt不就是溫度啦嗎??這個求得是什么,能舉例子說明嗎?


uint tmp()               //get the temperature
{
  float tt;
  uchar a,b;
  dsreset();
  delay(1);
  tmpwritebyte(0xcc);
  tmpwritebyte(0xbe);
  a=tmpread();
  b=tmpread();
  temp=b;
  temp<<=8;             //two byte  compose a int variable
  temp=temp|a;
  tt=temp*0.0625;
  temp=tt*10+0.5;
  return temp;
}
回復

使用道具 舉報

ID:337069 發表于 2019-4-20 08:20 | 顯示全部樓層
tt=temp*0.0625  :DS18B20讀取的值后四位二進制數是小數,要轉換十進制。因為二進制的0.0001 = 十進制0.0625,所以十進制溫度值=讀出值乘以0.0625
temp=tt*10+0.5 :返回值temp是uint,無符號整形,tt浮點型,有四位小數,浮點型轉化無符號整形后面小數會丟掉。乘10,為了保留最后一位小數,加0.5,是四舍五入。
tt=12.9345 * 10 + 0.5    返回值temp = 129      溫度12.9
tt=129.545 * 10 + 0.5    返回值temp = 130      溫度13.0
回復

使用道具 舉報

ID:213173 發表于 2019-4-20 08:40 | 顯示全部樓層
取整數,小數部分四舍五入。
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 亚洲一区二区精品视频 | 天天插天天操 | 国产精品99久久久久久动医院 | 国产精品无码专区在线观看 | 日韩欧美在线观看视频 | 久久久久国产精品免费免费搜索 | 国产精品福利网站 | 午夜免费网 | caoporn国产精品免费公开 | 久久国产精品网 | 亚洲乱码国产乱码精品精的特点 | 国产精品自产拍在线观看蜜 | 国产一区二区三区视频免费观看 | 亚洲性人人天天夜夜摸 | 成人一区二区在线 | 精品视频一区二区三区 | 在线毛片网| 久久伊人久久 | 成人小视频在线观看 | 日韩中文一区 | 人人草人人干 | 97国产精品 | 黄色操视频 | 精品久久久久久久 | 精品成人69xx.xyz | 国产日韩精品视频 | 一区二区三区视频在线观看 | 欧美日本一区 | 欧美精品乱码久久久久久按摩 | 天天操天天摸天天爽 | 九九热在线视频观看这里只有精品 | 久久久久国产 | 成人久久久| 亚洲三区在线观看 | 免费一区二区三区 | 欧美日韩综合 | 毛片免费观看 | 99久久精品免费看国产小宝寻花 | 欧美精品在线播放 | 国产日产精品一区二区三区四区 | 午夜影视|