1024手机基地看电影,午夜福利视频导航,国产精品福利在线一区,亚洲欧美日韩另类成人,在线观看午夜日本理论片,成年超爽免费网站,国产精品成人免费,精品动作一级毛片,成人免费观看网站,97精品伊人久久大香蕉

標題: 關于DS18B20正負溫度的判斷問題 [打印本頁]

作者: liyihang    時間: 2020-5-24 14:37
標題: 關于DS18B20正負溫度的判斷問題
正溫度的話直接乘0.625就得到實際溫度,而負溫度的話要取反加1再乘0.625,這里它是怎么判斷正負溫度的?

{XLGDQO9(KZ5_V4)[H1JR)U.png (87.26 KB, 下載次數: 15)

{XLGDQO9(KZ5_V4)[H1JR)U.png

作者: benclee    時間: 2020-5-24 22:10
高8位大于7就是負溫度,
作者: mffhxa    時間: 2020-5-24 22:53
因為負溫度是用補碼表示的,所以要取反加1。
作者: wulin    時間: 2020-5-25 08:01
temp = (double)t; 在這里t被強制轉換成雙精度變量,就能以t的最高位判斷+/-。
作者: f556    時間: 2020-5-25 09:35
      if(Tempe & 0x800        )          //第12位為1,則溫度為負值,取反加一,將補碼變成原碼
      {
            Tempe= ~Tempe+1;
      }
Tempe=Tempe*0.625+0.5;        //擴大10倍,四舍五入




歡迎光臨 (http://m.raoushi.com/bbs/) Powered by Discuz! X3.1