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

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

搜索
查看: 2203|回復(fù): 3
打印 上一主題 下一主題
收起左側(cè)

單片機(jī)+SHT30濕度值在50度以上時(shí)變成亂碼?

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:525244 發(fā)表于 2022-3-1 09:38 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
我用的STC8A8K64S4A12單片機(jī),5V電壓,采集的SHT30數(shù)據(jù)進(jìn)行CRC8校驗(yàn),校驗(yàn)正確了才進(jìn)行計(jì)算顯示,能夠顯示數(shù)值,應(yīng)該都上來的數(shù)據(jù)是正確的。
void Getdat_SHT30()
{
    unsigned long     rawValueTemp;    // temperature raw value from sensor
    unsigned long     rawValueHumi;    // humidity raw value from sensor


                I2C_WriteNByte(SHT30_ADDR1,buffer_SHT30_TX1,2);  //寫入從機(jī)地址,以及指令
          Delay_1ms(5); //至少等待1.5ms
          I2C_ReadNByte(SHT30_ADDR1,buffer_Receviedat,6);
               
                        if(SHT3X_CalcCrc(buffer_Receviedat,2)==buffer_Receviedat[2])//校驗(yàn)溫度數(shù)據(jù)
                        {
                        
                                        rawValueTemp =(buffer_Receviedat[0] << 8) | buffer_Receviedat[1];
                                       
                                        temp =(int)((1750 *rawValueTemp >>16) - 450);
                                //temp =(int)((21875 *rawValueTemp)>>13);        
                                       
                                                
                        }        
                        else
                        {
                                rawValueTemp=0;
                            temp=0;
                        }               
        
                        if(SHT3X_CalcCrc(&buffer_Receviedat[3],2)==buffer_Receviedat[5])//校驗(yàn)溫度數(shù)據(jù)
                        {
                        
                        rawValueHumi =(buffer_Receviedat[3] << 8) | buffer_Receviedat[4];
                        humi =(int)((1000 *rawValueHumi)>>16);        
                        //humi =(int)((12500 *rawValueHumi)>>13);        
                                
                        }        
                        else
                        {
                                rawValueHumi=0;
                            humi=0;
                        }
            writedata(rawValueTemp,temp,rawValueHumi,humi);//串口發(fā)送讀上來的數(shù)值和轉(zhuǎn)換后的溫濕度值。
}

下邊是串口接收的數(shù)據(jù):
EMPAD=00026095 TEMP=0024.6    humiAD=00012981    humi=0019.8   
TEMPAD=00026090 TEMP=0024.6    humiAD=00013002    humi=0019.8   
TEMPAD=00026090 TEMP=0024.6    humiAD=00013002    humi=0019.8   
TEMPAD=00026137 TEMP=0024.7    humiAD=00012964    humi=0019.7   
TEMPAD=00026137 TEMP=0024.7    humiAD=00012964    humi=0019.7   
TEMPAD=00026596 TEMP=0026.0    humiAD=00019780    humi=0030.1   
TEMPAD=00026596 TEMP=0026.0    humiAD=00019780    humi=0030.1   
TEMPAD=00026892 TEMP=0026.8    humiAD=00029266    humi=0044.6   
TEMPAD=00026892 TEMP=0026.8    humiAD=00029266    humi=0044.6   
TEMPAD=00026892 TEMP=0026.8    humiAD=00029266    humi=0044.6   
TEMPAD=00027008 TEMP=0027.1    humiAD=94937396    humi=6683.9   
TEMPAD=00027008 TEMP=0027.1    humiAD=94937396    humi=6683.9   
TEMPAD=00027135 TEMP=0027.4    humiAD=94941842    humi=6690.7  


當(dāng)濕度數(shù)值大于44讀時(shí),源數(shù)據(jù)就變成亂碼了,這是什么原因?

sht30C51 - 度溫度正常 (2).zip

79.96 KB, 下載次數(shù): 35

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:525244 發(fā)表于 2022-3-1 09:57 | 只看該作者
解決了,數(shù)據(jù)組合問題,改成這樣沒問題了

評(píng)分

參與人數(shù) 1黑幣 +20 收起 理由
admin + 20 回帖助人的獎(jiǎng)勵(lì)!

查看全部評(píng)分

回復(fù)

使用道具 舉報(bào)

板凳
ID:525244 發(fā)表于 2022-3-1 09:57 | 只看該作者
數(shù)據(jù)組合問題,改成這樣沒問題了
void Getdat_SHT30()
{
    unsigned long     rawValueTemp;    // temperature raw value from sensor
    unsigned long     rawValueHumi;    // humidity raw value from sensor
   

        I2C_WriteNByte(SHT30_ADDR1,buffer_SHT30_TX1,2);  //寫入從機(jī)地址,以及指令
        Delay_1ms(5); //至少等待1.5ms
        I2C_ReadNByte(SHT30_ADDR1,buffer_Receviedat,6);

        if(SHT3X_CalcCrc(buffer_Receviedat,2)==buffer_Receviedat[2])//校驗(yàn)溫度數(shù)據(jù)
        {
        rawValueTemp =buffer_Receviedat[0];
        rawValueTemp =rawValueTemp<<8;
        rawValueTemp =rawValueTemp| buffer_Receviedat[1];
       
                //rawValueTemp =(buffer_Receviedat[0] << 8) | buffer_Receviedat[1];
               
                temp =(int)((1750 *rawValueTemp >>16) - 450);
                //temp =(int)((21875 *rawValueTemp)>>13);       
               
                       
        }       
        else
        {
                rawValueTemp=0;
                temp=0;
        }               

        if(SHT3X_CalcCrc(&buffer_Receviedat[3],2)==buffer_Receviedat[5])//校驗(yàn)溫度數(shù)據(jù)
        {
       
        rawValueHumi =buffer_Receviedat[3];
        rawValueHumi =rawValueHumi<<8;
        rawValueHumi =rawValueHumi| buffer_Receviedat[4];
        //rawValueHumi =(buffer_Receviedat[3] << 8) | buffer_Receviedat[4];
        humi =(int)((1000 *rawValueHumi)>>16);       
        //humi =(int)((12500 *rawValueHumi)>>13);       
               
        }       
        else
        {
                rawValueHumi=0;
                humi=0;
        }
    writedata(rawValueTemp,temp,rawValueHumi,humi);
}
回復(fù)

使用道具 舉報(bào)

地板
ID:1065002 發(fā)表于 2023-3-3 09:49 來自觸屏版 | 只看該作者
zgrfox110 發(fā)表于 2022-3-1 09:57
數(shù)據(jù)組合問題,改成這樣沒問題了
void Getdat_SHT30()
{

0度以下顯示錯(cuò)誤,報(bào)錯(cuò),卡死,哪里問題
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 精品在线一区二区三区 | 日本亚洲一区 | 97超碰在线免费 | 久久精品国产免费看久久精品 | 成人午夜网站 | 亚洲国产精品一区二区三区 | 亚洲精品1 | 羞羞视频网站在线观看 | 亚洲精品黑人 | 色天堂影院 | 日韩免费| 亚洲不卡在线观看 | 国产在线观 | 黄色三级免费 | 一级黄色播放 | 最新国产精品精品视频 | 成人国产精品色哟哟 | 在线观看国产视频 | 亚洲成人免费视频 | 亚洲狠狠 | 精品一区二区久久 | 亚洲国产91| 亚洲福利在线视频 | 欧美一区二区三区国产精品 | 精品九九| 不卡一区 | 狠狠做深爱婷婷综合一区 | 国产精品亚洲成在人线 | 久久久久精| 欧美一级特黄aaa大片在线观看 | 亚洲激情网站 | 伊人一区 | 亚洲欧美日韩在线不卡 | 久久精品亚洲成在人线av网址 | 国产成人精品午夜 | 久久天堂网 | 在线免费观看色 | 日日噜噜噜夜夜爽爽狠狠视频97 | 日本成人中文字幕在线观看 | a级网站| 亚洲欧美视频在线观看 |