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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 5723|回復: 9
打印 上一主題 下一主題
收起左側

關于sht11溫濕度檢測的零下溫度顯示問題

[復制鏈接]
跳轉到指定樓層
樓主
ID:208180 發表于 2017-11-17 15:43 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
想問下大神們,在sht11溫濕度檢測顯示到lcd1602的時候,
當溫度是零下溫度的時候,源碼需要怎么樣寫才可以在lcd上正確的顯示出負數溫度呢?

現在在論壇上參考到的代碼如下:

                       TEMP_data[0]=temp/1000+'0';                     //溫度百位
                       if (TEMP_data[0]==0x30)
                         TEMP_data[0]=0x20;
                       TEMP_data[1]=temp%1000/100+'0';                //溫度十位      
                       if (TEMP_data[1]==0x30 && TEMP_data[0]!=0x30)
                       TEMP_data[1]=0x20;
                       TEMP_data[2]=temp%100/10+'0';                   //溫度個位
                       TEMP_data[3]=0x2e;                              //小數點
                       TEMP_data[4]=temp%10+'0';                       //溫度小數點后第一位            
                       TEMP_data[5]=0xdf;                              //顯示溫度符號℃
                       TEMP_data[6]='\0';
                       
                        Print(TEMP_data);
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:79358 發表于 2017-11-17 16:25 | 只看該作者
判斷出來的溫度值是否小于零,是的話就要在前面加個符號,具體ASCII嗎查表,數值顯示和你讀到正溫度的顯示是一樣的
回復

使用道具 舉報

板凳
ID:208180 發表于 2017-11-17 17:15 | 只看該作者
嘉輝先生 發表于 2017-11-17 16:25
判斷出來的溫度值是否小于零,是的話就要在前面加個符號,具體ASCII嗎查表,數值顯示和你讀到正溫度的顯示 ...

感謝回復!

那源碼是應該判斷TEMP_data是否小于零呢,還是temp?
回復

使用道具 舉報

地板
ID:208180 發表于 2017-11-17 23:58 | 只看該作者
加了一行代碼之后,負數顯示倒是正常了,但是正數溫度又不對了。。。。急求回復啊。。

                      if(temp & 0xf0)
                                            {
                                                temp = ~temp + 1;
                                               
                                                TEMP_data[0]=0x2d;
                         TEMP_data[1]=temp%1000/100+'0';                //溫度十位      
                         if (TEMP_data[1]==0x30)
                                             TEMP_data[1]=0x20;
                         TEMP_data[2]=temp%100/10+'0';                   //溫度個位
                         TEMP_data[3]=0x2e;                              //小數點
                         TEMP_data[4]=temp%10+'0';                       //溫度小數點后第一位            
                         TEMP_data[5]=0xdf;                              //顯示溫度符號℃
                         TEMP_data[6]='\0';
                                                }
                                         
                                            else
                                                {
                               
                                                 TEMP_data[0]=0x20;
                         TEMP_data[1]=temp%1000/100+'0';                //溫度十位      
                         if (TEMP_data[1]==0x30)
                                             TEMP_data[1]=0x20;
                         TEMP_data[2]=temp%100/10+'0';                   //溫度個位
                         TEMP_data[3]=0x2e;                              //小數點
                         TEMP_data[4]=temp%10+'0';                       //溫度小數點后第一位            
                         TEMP_data[5]=0xdf;                              //顯示溫度符號℃
                         TEMP_data[6]='\0';
   
                                                }
                                                 
                               

                      Print(TEMP_data);                                //輸出溫度   
回復

使用道具 舉報

5#
ID:208180 發表于 2017-11-18 00:02 | 只看該作者
求大神指點到底需要如何修改代碼。。
回復

使用道具 舉報

6#
ID:143047 發表于 2017-11-18 22:49 | 只看該作者
請問sht11是如何區分正負溫度的呢?我用的是sht20在文檔沒有找到,想請教一下你,應該sht11和sht20相似的吧。
回復

使用道具 舉報

7#
ID:143047 發表于 2017-11-18 22:50 | 只看該作者
請教一下,請問sht11是如何判斷這個溫度是正溫度還是負溫度呢?
回復

使用道具 舉報

8#
ID:79358 發表于 2017-11-30 13:16 | 只看該作者
etxuxu 發表于 2017-11-17 17:15
感謝回復!

那源碼是應該判斷TEMP_data是否小于零呢,還是temp?

temp 應該是你讀到的溫度   TEMP_data在你程序里面是個數組,目的為了是區temp的各個位,方便在1602上顯示的。
回復

使用道具 舉報

9#
ID:319538 發表于 2018-5-1 11:42 來自手機 | 只看該作者
你這個問題解決了嗎?我用protues仿真時sht10的溫濕度總有1-2度的偏差25度之后溫度就會低于我在sht10上顯示的值,這是為什么呢?
回復

使用道具 舉報

10#
ID:504613 發表于 2019-5-5 09:16 | 只看該作者
我也遇到這個問題,你的解決了嗎/
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 日韩美女在线看免费观看 | 精品国产青草久久久久96 | 国产成视频在线观看 | 国产精品永久免费视频 | 久久久高清 | 亚洲激情专区 | 国产一级网站 | 亚洲高清在线观看 | 成人欧美一区二区三区黑人孕妇 | 精品视频一区二区三区 | 亚洲成人av | 18av在线播放 | 在线成人av | 黄色毛片在线看 | 在线播放国产一区二区三区 | 一区二区三区在线免费观看视频 | 日韩视频中文字幕 | 超碰地址 | 日本三级全黄三级a | 超碰在线国产 | 欧美精品久久一区 | 欧美日韩国产中文 | 亚洲成人毛片 | 成人不卡一区二区 | 久久国产一区 | 欧美日韩亚洲一区 | 国产在线视频一区 | 免费一区二区 | 国产精品入口久久 | 精品永久 | 亚洲一区二区三区四区五区午夜 | 国产精品一区二区免费看 | 91成人在线视频 | 精品国产乱码久久久久久影片 | 成人在线一区二区 | 国产美女黄色片 | 91日韩在线 | 亚洲精品视频在线观看免费 | 超碰综合 | pacopacomama在线 | xx性欧美肥妇精品久久久久久 |