找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1963|回复: 5
打印 上一主题 下一主题
收起左侧

DS18B20的温度计部分单片机程序,为什么Temp>1000时表示大于10度呢?

[复制链接]
跳转到指定楼层
楼主
ID:338940 发表于 2018-6-6 18:24 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
void datapros(int temp)   
{
    float tp;  
if(temp< 0)   
   {
  DisplayData[0] = 0x40;   
temp=temp-1;
  temp=~temp;
  tp=temp;
  temp=tp*0.0625*100+0.5;
  if(temp>1000)//这里为什么是大于10呢?是怎么算的?
  {P1_2=0;P1_1=1;
  beeIO();}
  else
  {P1_2=1;P1_1=1;}

   }
如题,基于DS18B20的温度计部分程序,为什么Temp>1000时表示大于10度呢?

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:303383 发表于 2018-6-6 20:54 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

板凳
ID:277550 发表于 2018-6-6 21:01 | 只看该作者
temp=tp*0.0625*100+0.5; /////这放大了100倍的。。。。。为了方便使用整数表示小数(2位小数)
回复

使用道具 举报

地板
ID:70490 发表于 2018-6-6 22:07 | 只看该作者
为了方便使用整数表示小数(2位小数)
回复

使用道具 举报

5#
ID:338940 发表于 2018-6-6 23:32 | 只看该作者
devcang 发表于 2018-6-6 21:01
temp=tp*0.0625*100+0.5; /////这放大了100倍的。。。。。为了方便使用整数表示小数(2位小数)

明白了,谢谢!
回复

使用道具 举报

6#
ID:338940 发表于 2018-6-6 23:33 | 只看该作者
fengye615 发表于 2018-6-6 22:07
为了方便使用整数表示小数(2位小数)

明白了,谢谢!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表